正则表达式分割字符串
要将一串名字'张三;李四, 王五 。赵六,周七'用正则表达式分割开,可以names='张三;李四, 王五 。赵六,周七'
import re
namelist = re.split(r'\s*[;,*。\s*]\s*',names)
print(namelist)
但是若在名字里再加一点符号:'张三;李四,, 王五 。赵六,周七'
这里只在李四后面多了一个逗号,分割的结果就不一样了,那正则表达式该怎么写呢?
可以这样:
r'\s*[;,。]{1,2}\s*'
参考代码:
import re
names = '张三;李四,, 王五 。赵六,周七'
namelist = re.split(r'\s*[;,。]{1,2}\s*', names)
print(namelist)
匹配非汉字作为分隔符
import re
names = "张三;李四,! 王五 。赵六,周七"
namelist = re.split(r"[^\u4e00-\u9fa5]+", names)
print(namelist)
页:
[1]