在学习用正则来处理字符串,要处理的字符串是下面这种的,想用正则的方式,把|隔开的文本提取出来
text="中国|我爱你|国庆大典|大阅兵"
写了一个正则
pattern = r'(^?[^|]+$?)'
result = re.findall(pattern, text)
执行后,就报错了,提示:nothing to repeat at position
网上查了一下,说是正则的写法错误
我改了下写法
pattern = r'([^]?[^|]+[$]?)'
result = re.findall(pattern, text)
这样改写后,就执行正常,获取到了目标字符串数组了
至于为什么第一种写法不对,暂时还不了解。