如何检查数字是否超出指定的六进制范围?

问题描述 投票:0回答:1

如何编写可识别此格式的任何表达式的正则表达式:"\xdd",而dd表示十六进制数,范围在00-7F之外?

lex
1个回答
1
投票

正则表达式不表示数字范围,而是表示字符集中的字符序列。您必须一次将这些范围表示一个字符。

因此,十六进制数字是[0-9A-F],它使用两个范围[0-9][A-F]描述了一个数字的字符集(还必须确定是否允许使用小写字母)。对于两位数,您必须注意,仅使用[0-7],第一位的范围较短。合并结果为:

[0-7][0-9A-Fa-f]

将其他符号放在适当的位置,我们可以得到:

\\x[0-7][0-9A-Fa-f]

(假设\是需要转义的元字符)。

© www.soinside.com 2019 - 2024. All rights reserved.