Синтаксис регулярного выражения в Perl для шестнадцатеричной буквы - PullRequest
1 голос
/ 29 декабря 2011

В Perl я пытаюсь использовать регулярное выражение для поиска по определенным шестнадцатеричным символам, но я не уверен, допустим ли синтаксис xB (т. Е. Относится к символу вертикальной табуляции) или он должен быть просто \ B?Кроме того, допустимо ли значение x9 или просто 9?

perl -ane '{ if(m/([\x0-\x9]|[\xB-\xC]|[\xE-\x1F]|[\x7F-\xFF])/) { print } }'

1 Ответ

5 голосов
/ 29 декабря 2011
perl -lne 'print if /[\x00-\x09\x0b\x0c\x0e-\x1f\x7f-\xff]/'

Документировано в http://perldoc.perl.org/perlrecharclass.html#Bracketed-Character-Classes:

[Некоторые последовательности, включая] \ x, также являются специальными и имеют те же значения, что и вне класса символов в квадратных скобках.

...