分页: 1 / 1

请教一个正则表达式 零宽断言?

发表于 : 2016-01-16 13:35
jsjcjsjc
^^^^I'm planning to study abroad ((in the near future)).##我最近计划要出国念书。##anning to study abroad ((in the near future)).##||我最近计划要出国念书。

问题1
找到^^^^之后第1个##
问题2
找到^^^^之后第2个##

如果用(?<!\^)\^\^\^\^(?!\^)(?!\|).*?\#\#就把^^^^和##之间的文字全部找到到了~~~
初学正则表达式~~是在想不到解决办法啊,谢谢各位的关注
:em01

Re: 请教一个正则表达式 零宽断言?

发表于 : 2016-01-16 14:14
FingerKKK
第一个

代码: 全选

/\(#.*\)\@<!##
第二个

代码: 全选

/\(^[^#]\+##[^#]\+\)\@<=##

Re: 请教一个正则表达式 零宽断言?

发表于 : 2016-01-16 19:27
jsjcjsjc
FingerKKK 写了:第一个

代码: 全选

/\(#.*\)\@<!##
第二个

代码: 全选

/\(^[^#]\+##[^#]\+\)\@<=##
感谢您的关注,但是我在RegexTester.exe中尝试了一下貌似不可以啊
而且这个和我说的^^^^貌似没有关系啊,我希望的结果是^^^^之后第一个##

Re: 请教一个正则表达式 零宽断言?

发表于 : 2016-01-16 23:35
FingerKKK
jsjcjsjc 写了:
FingerKKK 写了:第一个

代码: 全选

/\(#.*\)\@<!##
第二个

代码: 全选

/\(^[^#]\+##[^#]\+\)\@<=##
感谢您的关注,但是我在RegexTester.exe中尝试了一下貌似不可以啊
而且这个和我说的^^^^貌似没有关系啊,我希望的结果是^^^^之后第一个##
vim中测试,开头第一个/是vim的搜索符号,去掉才是正则。
限定^^^^加上之后就是这样。

代码: 全选

\(^\^\^\^\^.*#.*\)\@<!##

代码: 全选

\(^\^\^\^\^[^#]*##[^#]*\)\@<=##