2024-09-30 01:19:42 发布
网友
s = '!sopa !sop !sopaa !sopii'
如何在使用单词边界时忽略!
!
输出:'!sopa !sop !sopaa !sopii'
'!sopa !sop !sopaa !sopii'
搜索非字母数字字符并用空格替换:
re.sub('\W+',' ',s)
' sopa sop sopaa sopii'
好像你想要这样的东西。在
>>> s = '!sopa !sop !sopaa !sopii' >>> re.sub(r'\B!sop\b', 'sopa', s) '!sopa sopa !sopaa !sopii'
正则表达式将失败,因为在!符号之前没有\b实际存在。也就是说,从上面看,只有前面有非单词字符的!符号才会匹配。\b匹配单词字符和非单词字符,反之亦然。\B匹配两个单词和两个非单词字符。这里\B实际上存在于空格和!之间,因为它们都是非单词字符。在
\b
\B
(?:^|(?<= ))!sop\b
你可以简单地使用这个。看到了吗演示。在
https://regex101.com/r/bW3aR1/12#python
re.sub(r'(?:^|(?<= ))!sop\b', 'sopa', s)
动态字符串
搜索非字母数字字符并用空格替换:
好像你想要这样的东西。在
正则表达式将失败,因为在
!
符号之前没有\b
实际存在。也就是说,从上面看,只有前面有非单词字符的!
符号才会匹配。\b
匹配单词字符和非单词字符,反之亦然。\B
匹配两个单词和两个非单词字符。这里\B
实际上存在于空格和!
之间,因为它们都是非单词字符。在你可以简单地使用这个。看到了吗演示。在
https://regex101.com/r/bW3aR1/12#python
re.sub(r'(?:^|(?<= ))!sop\b', 'sopa', s)
动态字符串
^{pr2}$相关问题 更多 >
编程相关推荐