如何通过掩码过滤字符串中的符号?

Bdf*_*dfy 0 python regex

如何通过掩码过滤字符串中的符号?

例如,我有简单的字符串:

"tes!@#$%^&*(())___+t" "test1" "test3N"
Run Code Online (Sandbox Code Playgroud)

例如,如何删除不在"a-zA-Z"中的符号?

Mar*_*ers 5

很简单,在正则表达式中使用负字符类:

import re

re.sub('[^a-zA-Z]', '', inputstring)
Run Code Online (Sandbox Code Playgroud)

[....]表示一个字符类.通常,班级中的任何东西都匹配.通过^在开始时添加插入符号来否定该类; 任何不在课堂上的东西.

结果:

>>> import re
>>> re.sub('[^a-zA-Z]', '', '"tes!@#$%^&*(())___+t" "test1" "test3N"')
'testtesttestN'
Run Code Online (Sandbox Code Playgroud)