Python中是否存在负正则表达式(否定)?

时间:2017-06-17 06:56:25

标签: python regex

假设我想创建一个描述所有整数的RE。根据定义,表达式为:

(+|-)?[0-9]+

但该定义也与这些数字匹配:+0, -0, 0045

0045场合可能使用回顾表达式来解决,但我怎样才能从RE中排除+0-0字符串。我认为这个语法是^(+0|-0),但这可能是其他框架的RE语法而不是Pythons'。

1 个答案:

答案 0 :(得分:3)

然后可以单独处理零的情况。零或非零数字的正则表达式:

0|[+-]?[1-9][0-9]*

假设是:

  • 没有多余的标题零。
  • 零前无迹象
  • 在非零数字之前允许多余的加号。

在字符组(带方括号)之外,符号^表示字符串或行的开头,具体取决于re.MULTILINE的标记设置。