8启用了pcre,我试图匹配\ p {Po}组加上一堆其他东西。
我想排除&符号。如何从课堂中排除特定角色?
-- lua btw
local utf8_general_punctuation_reg = "[\\p{Po}\\p{Cc}\\p{Cs}\\p{Pc}\\p{Pe}\\p{Ps}\\p{Pf}\\p{Pi}\\p{Sm}\\x{2100}-\\x{2123}\\x{2600}-\\x{26ff}]+"
提前致谢!
BTW \ p {Po}适用于utf8 http://www.fileformat.info/info/unicode/category/Po/list.htm
只需添加以下答案中的作品:
local utf8_general_punctuation_reg = "[\\p{Po}\\p{Cc}\\p{Cs}\\p{Pc}\\p{Pe}\\p{Ps}\\p{Pf}\\p{Pi}\\p{Sm}\\x{2100}-\\x{2123}\\x{2600}-\\x{26ff}]+(?<!(&|\\.|:))"
答案 0 :(得分:1)
你可以使用负面的lookbehind。我不熟悉pcre语法。
[abc](?<!b)
该正则表达式首先允许a或b或c,只看Unicode属性允许不同的字符,然后禁止带有负向lookbehind的b字符。
上面的正则表达式最后会匹配a和c,但不会匹配b。