【发布时间】:2022-01-06 23:42:37
【问题描述】:
我正在使用正则表达式进行匹配
([A-Za-z2-7\/\\+]{52})
虽然上面提到的任何 52 个字符的字符串都会匹配该字符串,但我想排除以 : 开头的字符串,后跟 52 个字符。
我正在使用正则表达式风味 pcre2 例如,虽然下面的字符串与正则表达式匹配,但我不想包含它,因为 52 个字符前面有一个 :
C:\Users\abcdef\AppData\Local\abcdefghijklmnopqr\Testmeli_fi
【问题讨论】:
-
如果我将您的模式
([A-Za-z2-7\/\\+]{52})用于C:\Users\abcdef\AppData\Local\abcdefghijklmnopqr\Testmeli_fi字符串,它只会选择52 个字符:\Users\abcdef\AppData\Local\abcdefghijklmnopqr\Testm。所以如果这个被删除,结果将是C:eli_fi。是你想要的吗? -
使用消极的后视。
-
如果你排除一个以
:开头的字符串,它只会匹配从U开始的字符串,而不是\。
标签: regex regexp-replace