Python正则表达式未以给定模式结尾
想要用python编写正则表达式,它接受开始HTML标记,但不接受自动关闭HTML标记。 所以规则是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 '>
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
-第二种选择:斜杠,后面不跟 通过一系列空格和“>”(负向前看))
)+
-非捕获组结束时,可能出现此组
很多次
-表示自身
这样的情况,请将最后一个+
替换为*
(不允许出现非捕获组)。
看