1

我正在学习正则表达式并试图了解如果正则表达式以十六进制值表示时将匹配什么值。

例如,如果我有^[\\x00-\\xff]{16},这是否意味着它将匹配 0-255 的任何值,长度为 16 位?

我上网查了一下,好像没找到例子。

谢谢

4

1 回答 1

2

十六进制值是指被匹配的字符串字符的字符代码。例如,'A'在 ASCII 或 UTF-8 中是 65,或者x41.

^[\x00-\xff]{16}意味着匹配,锚定在字符串的开头,正好匹配 16 个字符,其数值在 0 到 255 之间。如果您的正则表达式引擎不是多字节字符集感知的,那将意味着任何字符,所以在那个case 它几乎与 相同^.{16},除了在许多正则表达式引擎.中不会匹配换行符,除非打开特定选项(/s在 Perl 和 Perl 兼容的正则表达式中)。

于 2012-07-02T21:49:52.120 回答