Я пытаюсь найти три строки рядом друг с другом в регулярных выражениях, я использую Sublime text 2, просто используя командную строку регулярных выражений в нижней части экран. Я возился, но не могу понять. Я ищу через 10000 строк кода, строки помочь мне найти некоторые ошибки Я использую возвышенный 2, я могу получить 2 вещи, используяПоиск 3 вещей, близких друг к другу с использованием регулярных выражений для sublime
\word1.(?:..){1,750}?word2\b
, когда я пытаюсь это
\word1.(?:..){1,750}?word2\b | \word2.(?:..){1,750}?word3\b
это дает мНОЙ OR
заявление, и я искал AND
заявление
до сих пор это то, что я пытался
\word1.(?:..){1,750}?word2\b | \word2.(?:..){1,750}?word3\b
мы можем увидеть строки, которые вы хотите, возможно, в контексте некоторых других данных, в которых они включены? –
Операция 'OR' выражается символом' | 'в regex, но' AND' выражается символом '. *' И сложнее, поскольку нам приходится учитывать две возможные позиции: '1. * 2' и' 2. * 1 '. С 3 альтернативами это еще хуже. Однако, если все должно присутствовать в строке, вы можете использовать lookaheads: '(? M)^(? =. * 1) (? =. * 2) (? =. * 3). *' Для соответствия этой строке , Если могут быть новые строки, вам необходимо обеспечить многострочный режим, используя '(? S)' начало шаблона. –
Это работает? '\ word1. (?: ..) {1,750}? word2 \ b (?: ..) {1,750}? word3 \ b' – Diego