我真的很迷恋Python中的正则表达式。我有一个包含如下项目的字符串:
"""
(001,002) SI [SomeTag]:Element
(001,003e) LO [SomeTag2]:Element2
(001,004r) LR [SomeTag3]:Element3
(001,006) HI [SomeTag4]:Element4
"""
我想选择“Element2”。我尝试选择行
me = re.search("\(001,003e\)(.*)", obj)
它给了我整行内容。但我只想要“Element2”。如何选择正则表达式匹配的行中“:”之后的所有内容(例如“(001,003e)”)。
提前致谢!
最佳答案
添加上面的评论作为答案:
您可以使用 negated character class并使用 \(001,003e\)[^:]*:(.*)
。第二组将返回“Element2”。
关于python - 正则表达式匹配后选择文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11743271/