首页 >后端开发 >Python教程 >如何在 Python 中使用正则表达式拆分具有多个分隔符的字符串?

如何在 Python 中使用正则表达式拆分具有多个分隔符的字符串?

Patricia Arquette
Patricia Arquette原创
2024-12-12 21:08:13955浏览

How Can I Split Strings with Multiple Delimiters in Python Using Regular Expressions?

在 Python 中使用多个分隔符分割字符串

编程中的许多任务都涉及操作字符串。在处理包含多个分隔符(例如分号和逗号)的字符串时,有效地拆分它们至关重要。

使用正则表达式

一种常见的方法是使用正则表达式。考虑示例字符串:

"b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3], mesitylene [000108-67-8]; polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]"

要使用分号或逗号后跟空格分割此字符串,我们可以使用以下正则表达式:

'; |, '

此模式匹配分号或逗号后跟空格。使用 re.split() 函数,我们可以按如下方式拆分字符串:

import re

re.split('; |, ', "b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3], mesitylene [000108-67-8]; polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]")

注意: 不带尾随空格的单个逗号不会被拆分。

更新:扩展 Delimeter 模式

给定的解决方案可以进一步扩展以包括额外的分隔符。例如,要使用分号、逗号、星号和换行符分割以下字符串:

"Beautiful, is; better*than\nugly"

正则表达式将变为:

'; |, |\*|\n'

使用 re.split() 函数和以前一样:

re.split('; |, |\*|\n', 'Beautiful, is; better*than\nugly')

这将导致以下分割结果:

['Beautiful', 'is', 'better', 'than', 'ugly']

以上是如何在 Python 中使用正则表达式拆分具有多个分隔符的字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn