是否可以仅使用正则表达式(无附加代码!)来匹配第n个匹配?例如,我想匹配\ 002的第二,第四,第六,第八,第十,第十二等出现但是跳过以下字符串中的第一,第三,第五,第七等:
“CAR”\ 002“TRAIN”\ 002“BOAT”\ 002“BICYCLE”\ 002“HOUSE”\ 002“TENNIS”\ 002“BED”\ 002“KITCHEN”\ 002“LOVE”\ 002“HAPPENIES “
有没有人为此提供纯正的正则表达式解决方案?我需要这个,因为我无法更改使用正则表达式的代码,但我可以提供正则表达式。
提前致谢
答案 0 :(得分:0)
嗯,是的,你只是加倍了正则表达式:
\002[^\002]*(\002)
要一般匹配特定字符串的每第n次出现,您可以使用{}
:
(?:\002[^\002]*){n-1}(\002)