NOTEPAD ++ Проверка наличия в строке двойного символа c - PullRequest
0 голосов
/ 12 июля 2020

Итак, это было 2 часа поиска ничего, я посмотрел примерно 30 ссылок на stackoverflow, но все еще не получил нужного выражения.

Так что в основном в файле есть что-то вроде этого , и я хочу проверить, есть ли в строке дважды символ «:», поэтому, если строка :????rifo:, она найдет его.

Я пробовал с ^(?:[^:]*:[^:]*){0,2}$ но этот go в 2 строках и не может это исправить, может кто-нибудь мне поможет, пожалуйста?

1 Ответ

0 голосов
/ 12 июля 2020

Вы можете использовать это:

.*?:.*?:.*

Убедитесь, что флажок «. соответствует новой строке» не установлен.

.*? будет соответствовать любому символу, который не является новой строкой, пока он не сможет соответствовать следующему символу в регулярном выражении (например, :)

: будет буквально соответствовать первому : в строке

То же самое происходит во второй раз, а затем .* будет соответствовать оставшейся части строки. Он прекратит сопоставление в конце строки, поскольку . не соответствует символу новой строки (если вы не установите этот флажок).

Итак, все это означает, что вам на самом деле не нужно использовать ^ или $, хотя вы могли бы, если считаете, что это яснее.

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