可能重复:
Matching on repeated substrings in a regex如何检测正在重演相同的字母
我想看看我输入匹配abc
,但它实际上是abbbbbc
。尽管存在多个b
s,我仍然希望它匹配。
这些应该符合:
abc
abbc
abbbbbbbbbbbbbc
这些不应该匹配:
ab
bc
b
aabc
abcc
ac
可能重复:
Matching on repeated substrings in a regex如何检测正在重演相同的字母
我想看看我输入匹配abc
,但它实际上是abbbbbc
。尽管存在多个b
s,我仍然希望它匹配。
这些应该符合:
abc
abbc
abbbbbbbbbbbbbc
这些不应该匹配:
ab
bc
b
aabc
abcc
ac
^ab+c$
匹配一个a
,一个或多个b
S和一个c
。 ^
和$
将其固定到字符串的开始和结尾,以确保前面没有其他a
s,最后没有其他 s。
如果你想在一个较长的字符串找到这些,使用单词边界,而不是(他们匹配字处理和非单词字符之间的任何位置):
\\bab+c\\b
因此,这将发现abbbbc
in Foo abbbbc.bar
。但它在fooabbbbcbar
找不到它。如果你仍然想找到它,你将不得不离开了任何位置的断言:
ab+c
但随后,aaaabccccc
也将匹配。
我会尽力,谢谢。 – TheVarmari
好的,有一个问题;我会如何匹配[任何]同性恋/好朋友/ gaay等[任何事]?我正在使用这个系统,警告用户说“坏”的话等。我用Java,顺便说一句。 – TheVarmari
@TheVarmari您可以使用单词“\\ b'而不是'^'和'$'(即'\\ bba + r \\ b')。它们匹配,在词的结尾处。所以你可以在'这个baaaar.'中找到'baaar'。但是你不会在'thisbaroverhere'里找到'bar'。如果你仍然**想在这些情况下找到'bar',只需使用'bar'。但是'bbbbbarrrrr'也会匹配(而'尴尬'可能被标记为发誓的单词;))。 –
两种情况都有重复的字母!? –
为什么'drr'和'uuuuuuuuurr'不会触发?在第一个样本中,重复“r”,在第二个样本中重复“u”和“r”。 –
如果你正在寻找重复的u,为什么会“durr”触发? – BunjiquoBianco