我想查找所有出现在大字符串中的数字。匹配的数字后面必须紧跟平方米
,用于保存数字的行上方的字符串必须与土地面积:
匹配:
<tr>
<th>土地面积:</th>
<td>10000平方米</td>
</tr>
我该如何在Python中使用正则表达式?
答案 0 :(得分:2)
您可以使用以下模式:
(?<=土地面积:<\/th>\n<td>)\d+(?=平方米)
(?<=土地面积:<\/th>\n<td>)
向后查找文字子字符串土地面积:
,后跟</th>
,后跟换行符和<td>
。\d+
匹配数字。(?=平方米)
对平方米
子字符串的正向搜索。正则表达式演示here。
在Python中:
import re
mystr = '''
<tr>
<th>土地面积:</th>
<td>10000平方米</td>
</tr>
'''
print(re.findall(r'(?<=土地面积:<\/th>\n<td>)\d+(?=平方米)',mystr))
打印:
['10000']