Cha*_*eon 8 python regex string
我想要将\W除了-破折号之外的所有字母替换为空格,即:
black-white 会给 black-whiteblack#white 会给 black white我非常了解正则表达式,但我不知道如何处理它.
想想看,我想使用Unicode所以[a-zA-Z]不会\w仅英文喜欢.考虑到我更喜欢Python语法,但可以阅读其他建议.
fal*_*tru 11
使用否定字符类:( \W相当于[^\w]; [^-\w]=> \W除外-)
>>> re.sub(r'[^-\w]', ' ', 'black-white')
'black-white'
>>> re.sub(r'[^-\w]', ' ', 'black#white')
'black white'
Run Code Online (Sandbox Code Playgroud)
>>> import regex
>>> print regex.sub(r'(?V1)[\W--[-]]', ' ', 'black-white')
black-white
>>> print regex.sub(r'(?V1)[\W--[-]]', ' ', 'black#white')
black white
Run Code Online (Sandbox Code Playgroud)