我的字符串将包含()在其中。我需要做的是改变括号内的文字。在
示例字符串:"B.TECH(CS,IT)"
。
在我的字符串中,我需要将括号内的内容改为如下。。B.TECH(ECE,EEE)
我试图解决这个问题的方法如下。。在
reg = r'(()([\s\S]*?)())'
a = 'B.TECH(CS,IT)'
re.sub(reg,"(ECE,EEE)",a)
但我有这样的输出。。在
^{pr2}$
有效的输出应该是这样的。。在
B.TECH(CS,IT)
我在哪里失踪了以及如何正确地替换文本。在
Tags:
问题是您使用的是括号,这在RegEx中有另一种含义。它们被用作分组字符,以捕获输出。在
您需要将()转义为文本标记。您可以使用反斜杠字符转义字符:
\(
。在下面是一个例子:
正则表达式不起作用的原因是您试图匹配括号,括号在正则表达式中被认为是元字符。
()
实际上捕获了一个空字符串,并将尝试替换它。这就是为什么你得到你看到的输出。在要解决这个问题,你需要摆脱那些帕伦人的困扰
对于您的特定用例,我可以建议一个更简单的模式吗?在
^{pr2}$相关问题 更多 >
编程相关推荐