VB Script Regex возвращает нежелательное совпадение - PullRequest
0 голосов
/ 07 марта 2020

Из приведенных ниже строк я хочу сопоставить только первое и третье (а не второе). Это только строки, состоящие из любого повторяющегося алфавита. например, aaa, aa, aaaaa, bb, cccc, ddd, zzzzzz et c

aa 
aa.ahab 
aaa

Я использую регулярное выражение, приведенное ниже, и оно возвращает нежелательное дополнительное совпадение (второе значение выше)

regexp.Pattern = "\b([a-zA-Z])\1+\b" 

1 Ответ

0 голосов
/ 07 марта 2020

Поскольку вы хотите соответствовать вашим требованиям по всей строке, вы должны использовать ^ и $ якоря:

regexp.Pattern = "^([a-zA-Z])\1+$"

См. В демонстрационной ссылке ниже, что только первый и третий входные данные совпадают.

Демо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...