基于一些数字字符串:
(30123:424302) 123 #4324:#34123
如何才能只获取前面没有“#”的数字?我已经找到了如何获取以“#”开头的数字(\#+\d+
),但我需要相反的。我可以将所有 \d+
分组,然后根据我拥有的模式进行反向匹配吗?
为了澄清,我在上面的示例中需要 30123
、424302
和 123
。
最佳答案
您可以尝试使用负后向+单词边界的正则表达式:
(?<!#)\b\d+
正则表达式详细信息:
-
(?<!#)
:当#
时,负向后查找条件会使匹配失败出现在前面的位置 -
\b
字边界 -
\d+
:匹配1+位数字
关于python - 正则表达式 (Python) : Matching Integers not Preceded by Character,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76058513/