以下正则表达式:
[^;].+?(?=;)
将匹配任何内容,直到&#39 ;;'
example: select * from table;select * from tableb;
只有select语句会匹配,这就是我想要的,但是以防我
select * from /; tablec ;
我希望匹配为select * from /; tablec
,即忽略前面有'/'
的半冒号
答案 0 :(得分:4)
像这样改变你的正则表达式,
[^;](?:\/;|.)+?(?=;)
(?:\/;|.)
这会使/;
或.
任何字符贪婪地匹配一次或多次。
或强>
使用负面的lookbehind。
[^;].+?(?=(?<!\/);)