我正在尝试用Python编写一个简单的正则表达式,该表达式可以识别逗号或换行符,用作分隔符和split()文本。
我尝试了以下方法:
delim = r'[,n]'
delim = r'[n,]'
delim = r',|n'
delim = r'[,|n]'
delim = r'(,n)'
这些都不起作用。如果我只制作一个或另一个,split() 工作正常,例如......
delim = r','
delim = r'n'
但如果我尝试同时做这两件事,那就不行了。
我在这里错过了什么?
感谢您的投入。
整个代码:
data = "abc,defnghi"
delim = r'[,n]'
values = data.split(delim)
print(values)
您正在使用 str.split()
,它不将正则表达式作为参数。
尝试在正则表达式字符串上使用re.compile
,然后使用该对象进行拆分:
import re
data = "abc,defnghi"
delim = re.compile(r'[,n]')
values = delim.split(data)
print(values)
收益 率:
['abc', 'def', 'ghi']
这是 bult-in python re module
import re
data = "abc,defnghi"
re.split(",|n", data)
Out[3]: ['abc', 'def', 'ghi']
您可以输入分隔符列表,如下所示 ",||;|随便|随便2"