读书人

正则表达式的一个有关问题

发布时间: 2012-01-03 22:16:06 作者: rapoo

正则表达式的一个问题
(\w)\1{4,} 与 (\w){4,}\1 的区别是什么?
例如我匹配aa bbbb abcdefg ccccc 111121111 999999999
当用第一个表达式的时候的结果是: ccccc 999999999
当用第二个表达式的时候结果是:ccccc 111121111 999999999
真的不怎么明白,请教大家能否解析下?

[解决办法]
\1表示第1个捕获组,也就是第1个括号中的内容(完全一致)。
(\w)\1{4,}匹配字符完全一样的字符串,长度5个以上。。
而(\w){4,}\1能匹配到开始字符和结尾字符相同,且中间有3个以上字符(字母数字下划线)的字符串。。
[解决办法]

探讨
引用:
\1表示第1个捕获组,也就是第1个括号中的内容(完全一致)。
(\w)\1{4,}匹配字符完全一样的字符串,长度5个以上。。
而(\w){4,}\1能匹配到开始字符和结尾字符相同,且中间有3个以上字符(字母数字下划线)的字符串。。

而(\w){4,}\1能匹配到开始字符和结尾字符相同,且中间有3个以上字符(字母数字下划线)的字符串。
你所说的这个不是这个意思吧。。应该是只要最后那两个字母相同就可以的…

读书人网 >C#

热点推荐