Большинство программ, использующих шаблоны регулярных выражений, фактически реализуют поиск шаблона вместо полного -совпадения строки . В Python есть разные методыsearch()
и match()
, где search()
соответствует в любом месте строки, а match()
— только в начале. grep
имеет опцию -x
для запроса совпадения со всей строкой; по умолчанию он соответствует любому месту в строке. Другие, такие как sed
, awk
и Perl, будут с радостью искать шаблон в любом месте строки. Используйте модификаторы ^
и $
(«якоря» ), чтобы принудительно установить шаблон в начало или конец строки (соответственно ).
Итак, шаблон ERE, который вам нужен, вероятно, это:
^-?[1-9]?[0-9]$