如何使用Python按各种符号分割?

MEh*_*san 5 python string parsing split

我有这个简单的文件:

1|2|234 A=Jim 33
1|2|765 A=Sam 44
1|2|561 A=Edy 55
Run Code Online (Sandbox Code Playgroud)

我想解析该文件以获得以下输出:

["1","2","Jim 33"]
["1","2","Sam 44"]
["1","2","Edy 55"]
Run Code Online (Sandbox Code Playgroud)

我尝试用“|”分割,但我面临的问题是如何用“A=”分割或如何使程序识别“A=”并打印它后面的内容。

我想到的算法是迭代每个拆分项并检查该项是否包含字符“A=”。不知道如何将其转换为 python 代码。有什么蟒蛇式的想法吗?

fal*_*tru 7

您可以使用正则表达式re.split

>>> import re
>>> re.split('\|| A=', '1|2|234 A=Jim 33')
['1', '2', '234', 'Jim 33']
Run Code Online (Sandbox Code Playgroud)

\|| A=将匹配|A=。第一个|被转义,因为|在正则表达式中具有特殊含义(即 OR)。