提交记录 3160


用户 题目 状态 得分 用时 内存 语言 代码长度
Xeonacid 1000i. 【传统题】 A+B Problem Wrong Answer 0 143.61 us 40 KB C++11 1.06 KB
提交时间 评测时间
2018-07-09 12:43:07 2020-07-31 21:12:04
#include <iostream>
#include <string>
#include <regex>
 
int main()
{
    // 简单正则表达式匹配
    std::string fnames[] = {"foo.txt", "bar.txt", "baz.dat", "zoidberg"};
    std::regex txt_regex("[a-z]+\\.txt");

 
    // 提取子匹配
    std::regex base_regex("([a-z]+)\\.txt");
    std::smatch base_match;
 
    for (const auto &fname : fnames) {
        if (std::regex_match(fname, base_match, base_regex)) {
            // 首个 sub_match 是整个字符串;下个
            // sub_match 是首个有括号表达式。
            if (base_match.size() == 2) {
                std::ssub_match base_sub_match = base_match[1];
                std::string base = base_sub_match.str();
            }
        }
    }
 
    // 提取几个子匹配
    std::regex pieces_regex("([a-z]+)\\.([a-z]+)");
    std::smatch pieces_match;
 
    for (const auto &fname : fnames) {
        if (std::regex_match(fname, pieces_match, pieces_regex)) {
            for (size_t i = 0; i < pieces_match.size(); ++i) {
                std::ssub_match sub_match = pieces_match[i];
                std::string piece = sub_match.str();
            }   
        }   
    }   
}

CompilationN/AN/ACompile OKScore: N/A

Testcase #1143.61 us40 KBWrong AnswerScore: 0


Judge Duck Online | 评测鸭在线
Server Time: 2026-04-19 02:38:49 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠