我正在用Python3编写一个程序,并且在一个变量中有一个字符串。此字符串包含大量|和/字符,以及可能的字母数字字符和空格。
我需要一个正则表达式来除去除|和/以外的所有字符,并将它们替换为零。
因此,基本上,/|||/ blah /|||||/ foo /|/ bar /|||/将成为/|||//|||||//|//|||/。
有人能帮我吗?提前感谢
发布于 2017-01-20 23:53:01
import re
a = '/|||/ blah /|||||/ foo /|/ bar /|||/'
print(re.sub('[^/|\|]', '', a))
>>> /|||//|||||//|//|||/发布于 2017-01-20 23:57:47
上面的一个也可以缩写为re.sub('[^/|]') (不需要转义两个字符)。
发布于 2017-01-20 23:59:01
用regex做这个。http://regexr.com/是一个很好的工具来编写您自己的,但我在下面为您做了。
import re #import regex module
str = '/|||/ blah /|||||/ foo /|/ bar /|||/'
str = re.sub(r"[^|/]", "", str) #replaces everything that is not | or /
print(str)https://stackoverflow.com/questions/41774136
复制相似问题