相关疑难解决方法(0)

C++:我应该使用什么正则表达式库?

我正在开发一个在基于linux的系统上运行的商业(非开源)C++项目.我需要在C++代码中做一些正则表达式.(我知道:我现在有2个问题.)

问题:经常从C/C++开始使用正则表达式的人建议我查看哪些库?快速搜索引起了我的注意:

1)Boost.Regex(我需要阅读Boost软件许可证,但这个问题与软件许可证无关)

2)C(不是C++)POSIX正则表达式(#include <regex.h>,regcomp,regexec等)

3)http://freshmeat.net/projects/cpp_regex/ (我对此一无所知;似乎是GPL,因此无法在此项目中使用)

c++ regex linux

106
推荐指数
8
解决办法
11万
查看次数

如何使用std :: regex匹配多个结果

例如.如果我有一个像"第一个第二个第三个"的字符串,我想在一个操作中匹配每个单词,逐个输出.

我只是认为"(\ b\S*\b){0,}"会起作用.但实际上并没有.

我该怎么办?

这是我的代码:

#include<iostream>
#include<string>
using namespace std;
int main()
{
    regex exp("(\\b\\S*\\b)");
    smatch res;
    string str = "first second third forth";
    regex_search(str, res, exp);
    cout << res[0] <<" "<<res[1]<<" "<<res[2]<<" "<<res[3]<< endl;
}   
Run Code Online (Sandbox Code Playgroud)

我期待着你的帮助.:)

c++ regex

19
推荐指数
6
解决办法
3万
查看次数

用于标记英文文本的正则表达式

标记英文文本的最佳正则表达式是什么?

通过英文标记,我的意思是一个由最大数量的字符组成的原子,可以有意义地用于NLP目的.类比是任何编程语言中的"标记"(例如,在C中,'{','[','hello','&'等可以是标记).有一个限制:虽然英文标点字符可以是"有意义的",但为了简单起见,当它们没有出现在\ w +的中间时,让我们忽略它们.所以,"你好,世界." 收益'你好'和'世界'; 同样地,"你很好看." 可能会产生[你,是,好看]或[你,好,好看].

regex text nlp

8
推荐指数
2
解决办法
3780
查看次数

标签 统计

regex ×3

c++ ×2

linux ×1

nlp ×1

text ×1