十六进制的正则表达式

时间:2017-02-03 13:36:11

标签: python regex

我已经定义了长度为4的十六进制值的正则表达式,如下所示:

([0-9A-F]{4})

它工作正常,语法

0000

也是一个有效的十六进制数,但我想从有效匹配中丢弃它,因此期待提示如何扩展当前正则表达式以便

0000 is flagged as invalid and filtered out.

由于

1 个答案:

答案 0 :(得分:11)

您可以使用negative lookahead

(?!0000)[0-9A-F]{4}

此处(?!0000)是一个负向前瞻组。它或多或少地说:“并且不允许下一个元素是0000 ”但没有消费它们。

您可以在regex101上进行测试。