Notepad ++:: Найти строки, которые НЕ в определенном формате

Итак, у меня есть огромный текстовый файл в этом формате:

$transation[123456]='Table9912333';
$transation[123457]='Table8123321';
$transation[123458]='Chair0123334';

Все выглядит великолепно, но я хочу найти, есть ли строка, которая НЕ находится в этом формате внутри этого огромного текстового файла:

поэтому IOW... Это формат каждой строки:

$transation[{ANY NUMBER}]='{ANY TEXT}';\r\n

Я хочу найти ошибки на этой огромной текстовой строке, так что в основном, если строка НЕ ​​в формате выше, отметьте это...

1 ответ

^(?!\$transation\[\d+\]='[^']*';$).*$

Попробуйте это. Посмотрите демо.

https://regex101.com/r/qH1uG3/5

$re = "/^(?!\\$transation\\[\\d+\\]='[^']*';$).*$/m";
$str = "\$transation[123456]='Table9912333';\n\$transation[123457]='Table8123321';\n\$transation[123458]='Chair0123334';\n\$transation[123458]='Chair0123334'sdfds;";
preg_match_all($re, $str, $matches);

negative lookahead будет следить за тем, чтобы соответствие строк не было в требуемом формате.

licensed under cc by-sa 3.0 with attribution.