python正则表达式
先写正则表达式 re_log_data
,然后 re.compile(re_log_data)
预处理
1 | import re |
接下来,开始用一些方法搜索
findall
这个用法比较简单,大多时候这个就够了
1 | result = pattern.findall(test_string) |
一般自己打印出来看看,是元组、数组,还是其他,直接索引就可以了
match
只返回第一个
1 | result = pattern.match(test_string) |
其中
groups()
会出现一些无用的1
2
3
4
5
6
7
8result.groups()
# ('2316968.2 \n', '2316968.2', '.', None, None, None, None)
# 括号里变成数字 只是把 None 变成 这个数字
result.groups(0)
# ('2316968.2 \n', '2316968.2', '.', 0, 0, 0, 0)
result.groups(1)
# ('2316968.2 \n', '2316968.2', '.', 1, 1, 1, 1)group()
比较合适
1
2
3
4
5print(result.group())
# 0 98.676962 -442025.34 0 -441271.54 18272.015 2306304
# 2000 96.406522 -442997.22 0 -442260.76 -13680.737 2306304
# 4000 106.9393 -443334.55 0 -442517.63 -6014.7622 2316968.2
finditer
返回多个,每一个类似 match
test_string
换成如下
1 |
|
match
找不到后面的
当时没写完,我忘了这里准备写什么了……,或许是
可以试一下把下面的打印看看
1 | match.group() |
本文作者:yuhldr
本文地址: https://yuhldr.github.io/posts/6bab798e.html
版权声明:转载请注明出处!