我有一个文件,模式文本就像(1A0IA:0.42722,1AYLA:0.47152)
。我想用(1A0IA,1AYLA)
替换它。你知道吗
我知道我可以这样做:
text
是字符串包含(1A0IA:0.42722,1AYLA:0.47152)
expression 1 : reduced_text = re.sub(r':\d+\.\d+\,',r',',text)
output : (1A0IA,1AYLA:0.47152)
expression 2 : reduced_text = re.sub(r':\d+\.\d+\)',r')',reduced_text)
output : (1A0IA,1AYLA)
确切地说,我只想在(ID:float,ID:float)
中替换模式:float,
,但是存在一些包含:float,
的文本,但在这种字符串中不存在:(ID:float,ID:float)
。你知道吗
有没有一个表达式可以这样做?你知道吗
(string1:0.42722,string2:0.47152) -> (string1,string2)
第一个.{5}
是string 1
;第二个.{5}
是string 2
reduced_text = re.sub(r'\(.{5}:\d+\.\d+\,.{5}:\d+\.\d+\)',r'\(.{5}\,.{5}\)',text)
看看这个:
您要查找的是搜索组(例如参见Named Capturing Groups)。你知道吗
有了这些,你可以做如下的事情来获得你的身份证。你知道吗
实际上不需要命名捕获组,因此
(.{5})...
在这里就足够了。你知道吗更简单的正则表达式:
相关问题 更多 >
编程相关推荐