heavenm 发表于 2020-7-10 17:20:16

正则问题,能匹配到AABBCC,但是怎么全部输出?

(\w)\1(?!\1)(\w)\2(?!\1|\2)(\w)\3这条正则能匹配
112299

但是输出的结果是1,2,9
怎么输出112299?
这条正则根本看都看不懂!

heavenm 发表于 2020-7-10 17:22:10

StringRegExp 的模式2 返回包括完整匹配的数组.(Perl/ PHP 样式).
这个可以匹配到,但是基本上都是用的3,这个模式,2那个模式不知道可靠不

afan 发表于 2020-7-10 17:27:01

本帖最后由 afan 于 2020-7-10 17:38 编辑

用2或4可以,用3需要修改

Highlight code by AuREHelper
((\w)\2(?!\2)(\w)\3(?!\2|\3)(\w)\4)

heavenm 发表于 2020-7-10 17:35:54

我去,AFAN的正则已经出神入化啊!

afan 发表于 2020-7-10 17:41:31

heavenm 发表于 2020-7-10 17:35
我去,AFAN的正则已经出神入化啊!

没有,就是数组括号的问题
如上高亮就明显了,数绿色的左括号,后面的引用组 \就是计数

heavenm 发表于 2020-7-10 18:52:50

afan 发表于 2020-7-10 17:41
没有,就是数组括号的问题
如上高亮就明显了,数绿色的左括号,后面的引用组 \就是计数

一脸懵逼,这个引用,太难了,学了半天搞不明白
有一堆这样子的正则想改,算了,懒得改将就用用,以后再慢慢学了

862228699 发表于 2020-7-14 09:45:19

afan 发表于 2020-7-10 17:27
用2或4可以,用3需要修改

这颜色是方便阅读了。
页: [1]
查看完整版本: 正则问题,能匹配到AABBCC,但是怎么全部输出?