如果我将regex应用于以下字符串,正确的模式是什么?
item = "JavaScript:muestra('01','043','071','01','600%2D2023%2DSUNARP%2DTR')"
我希望得到的结果是
0104307101600-2023-SUNARP-TR
我试过:
import re
item = "JavaScript:muestra('01','043','071','01','600%2D2023%2DSUNARP%2DTR')"
content = re.findall(r"(\('.+?'\))",item)[0].replace("'","").replace(",","")
print(content)
2条答案
按热度按时间lxkprmvk1#
试试看:
如果这感觉太“松散”,你可以先用类似这样的东西抓住括号区域:
或者,更准确地说:
然后在上面的代码片段中运行基于
'
的匹配。使用
re.split()
也可以工作:另一种方法是
ast.literal_eval
将带括号的子字符串转换为元组:把它归结为一行代码,没有正则表达式:
jckbn6z72#