Python正则表达式替换单引号和方括号

2024-04-29 06:59:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用名称代替数量,然后用方括号和单引号替换里面的内容。所以,从这个角度来看:

RSQ(name['BAKD DK'], name['A DKJ'])

为此:

RSQ(BAKD DK, A DKJ)


Tags: name名称内容数量角度dk方括号单引号
2条回答

您还可以使用保存组从name['something']中提取字符串:

>>> import re
>>> s = "RSQ(name['BAKD DK'], name['A DKJ'])"
>>> re.sub(r"name\['(.*?)'\]", r"\1", s)
'RSQ(BAKD DK, A DKJ)'

其中(.*?)是一个capturing group,它将匹配non-greedy fashion中任意次数的任何字符。\1在替换字符串中引用捕获的组。在

代码-

import re
s = "RSQ(name['BAKD DK'], name['A DKJ'])"
expr = r"[\'\[\]]|\bname\b"
print(re.sub(expr, '', s))

输出-

^{pr2}$

相关问题 更多 >