Python 正则表达式,用于输出格式化标记

Python 正则表达式,用于输出格式化标记,python,regex,Python,Regex,假设我有string='IT:A12-IT:B23:REMOVE-IT:C45-IT:A67:ME' 我希望使用regex.sub的字符串的最终结果是string='IT:A12-IT:B23-IT:C45-IT:A67' 我想删除IT:xxx:yyy中的(任意数量的)字符y 我尝试了类似于re.sub(r':.+-','',string)的方法。然而,它移除了一切。请帮忙,谢谢。首先,你的问题令人费解。但是,看起来这就是你要找的正则表达式。更改\w{}中的数字以删除具有特定数量字符的项。此示例

假设我有
string='IT:A12-IT:B23:REMOVE-IT:C45-IT:A67:ME'

我希望使用regex.sub的字符串的最终结果是
string='IT:A12-IT:B23-IT:C45-IT:A67'

我想删除
IT:xxx:yyy
中的(任意数量的)字符
y


我尝试了类似于
re.sub(r':.+-','',string)
的方法。然而,它移除了一切。请帮忙,谢谢。

首先,你的问题令人费解。但是,看起来这就是你要找的正则表达式。更改
\w{}
中的数字以删除具有特定数量字符的项。此示例删除任何包含2个字符的内容:

/\bIT:\w+:(?<removeme>\w{2})\b/
/\bIT:\w+:(?\w{2})\b/

您希望输出如下:

>>> s = "IT:A12-IT:B23:REMOVE-IT:C45-IT:A67:ME"
>>> import re
>>> re.sub(r"\:[A-Z]{2,}", r"",s)
'IT:A12-IT:B23-IT:C45-IT:A67'

现在还不清楚你想做什么,你能解释一下你的逻辑吗?一定要结帐。有助于你自己尝试。