【发布时间】:2016-10-24 18:33:51
【问题描述】:
我正在尝试使用 .NET 正则表达式来检测字符串包含 5 个或更多字符且字符串中唯一字符相同的情况。所以这些将被视为匹配:
- 0000000000000
- ZZZZZZZZZ
- AAAAAA
但这些不会:
- 000000A000000
- ZZZZZZ ZZZ Z
- AA
是否有正则表达式可以检测到这种模式?
【问题讨论】:
-
^(.)\1{4}$很容易
我正在尝试使用 .NET 正则表达式来检测字符串包含 5 个或更多字符且字符串中唯一字符相同的情况。所以这些将被视为匹配:
- 0000000000000
- ZZZZZZZZZ
- AAAAAA
但这些不会:
- 000000A000000
- ZZZZZZ ZZZ Z
- AA
是否有正则表达式可以检测到这种模式?
【问题讨论】:
^(.)\1{4}$很容易
Wiktor 很接近,但他的意志只匹配 5 个字符。听起来你想要 5 个或更多。所以我会使用的是
^(.)\1{4,}$
(.)\1 将只捕获一个字符。 {4,} 指定一个字符然后重复 4 次或更多次。将其全部包裹在 ^ 和 $ 中意味着字符串紧接在此之前开始并紧接其后结束,因此不允许在其之前或之后出现任何其他内容。
【讨论】: