python - 如何使用正则表达式将这个字符串分成两部分?

标签 python regex

想象一下:

a = "('a','b','c'),('d','e','f')"

我正在尝试使用 re 拆分它,以便我将获得一个包含 2 个元素的数组,其中包含 "('a','b','c')"( 'd','e','f')。我试过了:

matches = re.split("(?:\)),(?:\()",a)

但这给了我结果:

'(2,3,4'
'1,6,7)'

我可以逐个字符地解析它,但如果可以使用正则表达式解决方案,我会更喜欢它。

最佳答案

您需要在逗号之前进行拆分,逗号前面是 ),后面是 (。但是括号本身不应该是拆分点的一部分。对于你需要使用积极的前瞻性和积极的断言背后的观察作为:

matches = re.split("(?<=\)),(?=\()",a)

See it

关于python - 如何使用正则表达式将这个字符串分成两部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8491235/

相关文章:

Python 正则表达式匹配包含字母和数字的 8 个字符的字符串

regex - 在每一行的开头添加空格数(在一个字符串内)

java - 使用java指定文本中名词的频率

python - 检查下一个值是否等于python循环中的当前值?

python - Bash 别名 --> Python 2.7 到 Python 3.3

python - 在 Python 中垂直合并列表列表的两列

python - 在桌面上打开 Python IDE

python - networkX node_connected_component 未针对定向类型实现

json - 从文本文件中提取多个匹配模式

regex - 我什么时候应该在正则表达式中使用\A?