我正在尝试使用c来检查正则表达式,但我对c中的regex知之甚少,并且只能在Python中提出一个模式。
模式将是:STRING1.*?STRING2(STRING3)?STRING4
我在网上搜索,似乎没有好办法,特别是如果我希望它不区分大小写。
我想有一些图书馆,但我尽量避免这种情况(不能说明原因。只知道背后有非软件原因)
它适用于strstr
吗?
答案 0 :(得分:1)
在C中有一个用于正则表达式的posix库,您可能会感兴趣。这个答案可能会有所帮助
另请参阅使用posix库
的示例除此之外,我不认为有更好的选择。至少我不知道
答案 1 :(得分:1)
可以使用常用的POSIX regexes,但POSIX正则表达式与Python等大多数其他实现方式有很大不同,并且缺少许多现代功能。
在C语言和许多其他语言中,通常使用PCRE or Perl Compatible Regular Expressions的一些实现。它将更接近Python开发人员的期望。它可以作为自己的C库使用,也可以作为part of a larger C library such as Gnome Lib使用。