我有一根绳子
text1="Information for Conformity of Production for OVC-HEV \n \nCombined \nCO2 emission (g/km) MC02,CS,COP \n216.66 \nAFCO2,CS \n1.02 \n \n \n2.1.2.2.2. CO2 mass emission of OVC-HEVs in case of a charge-depleting Type 1 test \n"
我想使用regex进入模式(\n2.1.2.2.2.)
之前的单词
预期产出:
Combined CO2 emission (g/km) MC02,CS,COP 216.66 AFCO2,CS 1.02
我编写了一个正则表达式字符串,用于搜索2.1.2.2.2之后的单词 但在反向搜索时不确定
这就是我试过的
text1='\n \n \n \nInformation for Conformity of Production for OVC-HEV \n \nCombined \nCO2 emission (g/km) MC02,CS,COP \n216.66 \nAFCO2,CS \n1.02 \n \n \n2.1.2.2.2. CO2 mass emission of OVC-HEVs in case of a charge-depleting Type 1 test \n \nTest 1 \n \nCO2 Mass Emission (g/km) \nCombined \nCalculated Value MCO2,CD \n17.27 \n'
m8A = re.search(r'\b(2.1.2.2.2. CO2 mass emission of OVC-HEVs).*((?:\n.*){7})', text1)
d8A = {}
if m8A:
d8A[m8A.group(1).strip()] = m8A.group(2).replace('\n', '').strip()
print(d8A)
我建议使用
见regex demo详细信息:
(?m)
-多行模式^
-行的开始(\S.*(?:\n\S.*)*)
-第1组:一个非空白字符,然后是零个或多个除换行符以外的字符(尽可能多),然后是零个或多个换行符+一个非空白字符+行的其余部分(?:\n[ \t]*){2,}
-两个或多个连续序列:换行符、零个或多个空格或制表符2\.1\.2\.2\.2\.
-一个2.1.2.2.2.
字符串李>见Python demo:
输出:
相关问题 更多 >
编程相关推荐