我想写一个匹配文本的正则表达式,如果它只包含一个字符串一次。该文字只能包含<scr>
一次。以下是一些例子:
hello-<scr>Keephello-endofstring
// ok; <scr>
发生一次
test-<scr>bla<scr>bla-end
//不行; <scr>
发生2次
hello-Keephello-end
//不行; <scr>
没有发生
我尝试使用以下正则表达式:
((?:(?<!<scr>).)*<scr>(?:(?!<scr>).)*)
第一个负面的背后隐藏确保<scr>
不会发生
必须遵守<scr>
在此之后,负向前瞻确保不再跟随<scr>
。
不起作用。
我想知道如何用正则表达式完成这项工作? (附说明)