假设我有一个字符串'ad>ad>ad>>ad'
我想就此分开'>'
(不是'>>'
字符)。刚刚拿起正则表达式,想知道是否有一种方法(特殊字符)可以分割匹配表达式的特定部分,而不是分割整个匹配表达式,例如正则表达式可以是:
re.split('[^>]>[^>]', 'ad>ad>ad>>ad')
你能把它拆分在括号中的字符上吗[^>](>)[^>]
?
您需要使用环视:
re.split(r'(?<!>)>(?!>)', 'ad>ad>ad>>ad')
See the 正则表达式演示
The (?<!>)>(?!>)
模式仅匹配a>
前面没有<
(由于负向后看(?<!>)
)并且后面没有跟<
(由于负前瞻(?!>)
).
由于环顾四周不会消耗字符(与否定(和肯定)字符类,例如[^>]
),我们只在一个上进行匹配和分割<
符号而不“接触”它周围的符号。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)