通过删除 [] 更改 Python 子字符串

Change Python substring by removing []

我在 Python 中遇到了无法解决的问题。例如,我有这段文字:

--Es que[103-l] haré todo ese trabajo por muy poco precio, casi
     de balde....

所以我想操纵该文本,以便我可以删除 [103-1]。有简单的方法吗?就像说“从'['到']'中删除”的方式一样。 谢谢!

这是一个简单的正则表达式:

import re

s = "--Es que[103-l] haré todo ese trabajo por muy poco precio, casi de balde...."

print(re.sub("\[.*?\]", "", s))

这应该打印:

--Es que haré todo ese trabajo por muy poco precio, casi de balde....

您可以使用正则表达式。它有点复杂,因为“[”和“]”是正则表达式中的控制字符,因此需要对它们进行转义。下面说匹配“[”,然后匹配任何内容的 non-greedy,直到下一个“]”

>>> import re
>>> text = "--Es que[103-l] haré todo ese trabajo por muy poco precio, casi de balde...."
>>> re.sub(r"\[.*?\]", "", text)
'--Es que haré todo ese trabajo por muy poco precio, casi de balde....'
>>>