问题陈述如下。
我的描述是
abc abcxxyz 10xabc abcx10 abc10xabc abcx10xyz
只要前缀为数字+ x或后跟x +数字,才能使用匹配abc的正则表达式。
在上面的示例中,它应该与abcx10,10xabc和abcx10xyz中的abc匹配 但不应该捕捉那些比赛中的数字。 这意味着在替换文本时,它应该只替换abcx或xabc。
已尝试(((((?:\d+)))[Xx]))(abc)(\s|$|(([Xx](?=((\d).)+)))|[^a-zA-Z0-9])
,但不会从捕获中排除数字。
感谢。
答案 0 :(得分:0)
试试这个:
((?<=\d[Xx])abc)|(abc(?=[Xx]\d))
请注意,lookbehind不能有任何量词 - 它必须具有已知和定义的长度。
如果你想获得abcx和xabc,版本略有不同: