Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python正则表达式未以给定模式结尾_Python_Regex - Fatal编程技术网

Python正则表达式未以给定模式结尾

Python正则表达式未以给定模式结尾,python,regex,Python,Regex,想要用python编写正则表达式,它接受开始HTML标记,但不接受自动关闭HTML标记。 所以规则是 1.match '<' 2.match any number of space 3.match one alphabet 4.match any number of any character except '>' 5.end **MUST NOT** be a sequence of '/' followed by any no of spaces followed by '>

想要用python编写正则表达式,它接受开始HTML标记,但不接受自动关闭HTML标记。 所以规则是

1.match '<'
2.match any number of space
3.match one alphabet
4.match any number of any character except '>'
5.end **MUST NOT** be a sequence of '/' followed by any no of spaces followed by '>'
1.match''
5.end**不能**是一个“/”后跟任何数量的空格并后跟“>”的序列
i、 e

火柴盒

< object src=as/asa __/rn      >  
<      object src=as/asa __  /">  


驳回案件

<a val=ads/arb/     >
<a val=ads/arb   /  >
<a val=ads/arb     />

简而言之,我想匹配不以“/*>”模式结尾的字符串

通过大量排列,我得出了接近但不精确的结果,这就是我的解决方案

< *[a-z][^>]*[^/]>
<*[a-z][^>]*[^/]>
它无法拒绝1和2拒绝案例
我想介绍处理字符串的一般方法,该字符串不以给定的其他模式结尾。就像我的一样。

使用以下正则表达式:

< *[a-z](?:[^\/\n]|\/(?! *>))+>
<*[a-z](?:[^\/\n]|\/(?!*>)+>
有选择:

  • i
    -不区分大小写
  • g
    -全局,以匹配所有标记
详情:

  • -第二种选择:斜杠,后面不跟 通过一系列空格和“>”(负向前看)
  • )+
    -非捕获组结束时,可能出现此组 很多次
  • -表示自身
  • 有关工作示例,请参见

    如果要匹配像
    这样的情况,请将最后一个
    +
    替换为
    *
    (不允许出现非捕获组)。 看