我有以下文本字符串
text = "\n1.2.2. ROAD LOAD PARAMETERS \nf0 \n227.4 \nf1 (N/(km/h)) \n0.149"
我正在尝试编写一个正则表达式匹配模式来获取 '1.2.2 之后的值(连续 2 个值)。道路荷载参数'
。
预期输出:
1.2.2. ROAD LOAD PARAMETERS : f0 227.4 # (only 2 values after the match)
尝试了以下正则表达式:
ec = re.search(r'(1.2.2. ROAD LOAD PARAMETERS)\s*(.+)', text)
ec.groups()
这给了我以下内容
('1.2.2. ROAD LOAD PARAMETERS', 'f0 ')
最佳答案
您可以使用str.split()
方法:
import re
text = "\n1.2.2. ROAD LOAD PARAMETERS \nf0 \n227.4 \nf1 (N/(km/h)) \n0.149"
i = "1.2.2. ROAD LOAD PARAMETERS"
val1, val2 = text[text.index(i) + len(i):].split()[:2]
print(i, ":", val1, val2)
输出:
1.2.2. ROAD LOAD PARAMETERS : f0 227.4
关于python Regex-根据条件获取匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68035295/