gpt4 book ai didi

python正则表达式匹配字符串不以开头

转载 作者:行者123 更新时间:2023-11-28 19:39:13 25 4
gpt4 key购买 nike

我想匹配任何以4321开头的字符串我以肯定的条件来解决它:匹配以 4321 开头的任何字符串:

^4321.* 

regex here

现在我想反转那个条件,例如:

  • 1234555 通过
  • 12322222 通过
  • 通过
  • 4321ZZZ 没有通过
  • 43211111没有通过

请帮助我找到尽可能简单的正则表达式来完成此任务。

我正在使用 mongo 正则表达式,但正则表达式对象是用 python 构建的,所以请不要在此处使用 python 代码(如 startswith)

最佳答案

您可以使用否定的前瞻性(需要多行修饰符):

^(?!4321).*

您还可以使用负向后视(暂时不匹配空字符串):

(^.{1,3}$|^.{4}(?<!4321).*)

注意:就像另一个答案所述,正则表达式不是必需的(但因为这是逐字逐句的问题所以给出了)-> 而只是使用 if not mystring.startswith('4321') .

编辑:我看到你现在明确要求一个正则表达式,所以拿我的第一个吧,这是我能想到的最短的 ;)

关于python正则表达式匹配字符串不以开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34706657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com