我在网上找到了一些答案,但是我没有使用正则表达式的经验,我相信这是这里需要的。
我有一个字符串需要用“;”或“,”分开 也就是说,它必须是分号或逗号后跟空格。不带尾随空格的单个逗号应保持不变
示例字符串:
"b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3], mesitylene [000108-67-8]; polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]"
应拆分为包含以下内容的列表:
('b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3]' , 'mesitylene [000108-67-8]', 'polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]')
做一个
str.replace('; ', ', ')
,然后做一个str.split(', ')
以下是使用正则表达式对任何iterable分隔符的安全方法:
re.escape允许自动构建模式,并使分隔符顺利转义。
这是一个解决方案,作为您复印粘贴乐趣的函数:
如果要经常使用相同的分隔符进行拆分,请像前面描述的那样预先编译正则表达式并使用^{} 。
幸运的是,Python内置了这个:)
更新:
根据您的评论:
相关问题 更多 >
编程相关推荐