简单(C++中的组匹配)

Simple (Group matching in C++)

本文关键字:C++ 简单      更新时间:2023-10-16

我有一个具有以下文本格式的文件:

Blah blah Blahhh<TAB SPACE -(/t character)>1234<TAB SPACE -(/t character)>some other crap blah

文本可能如下所示:

Saturday Evening    1234    Beautiful

我正在使用<regex>库,我想使用捕获组仅捕获"1234"。

我试过了:

"\t(\d+)\t"

但是当我打印结果时,它显示了"\t"字符和数字。有什么想法吗?

bd+b包含

单词边界。这将忽略当前正则表达式中匹配的制表符或空格。

http://regexr.com?32a07

或者,如果您想与选项卡匹配,

请使用断言,它们将匹配选项卡,但不会捕获它们:

(?<=t)d+(?=t)

一些细节会很有用,比如你用来进行搜索和提取结果的代码,但我的猜测是你看错了match_result索引:你应该看元素 1。参见match_results'运算符[]