(exp) 匹配exp,并捕获文本到自动命名的组里
(?<name>exp) 匹配exp,并捕获文本到名称为name的组里,也可以写成(?‘name‘exp)
(?:exp) 匹配exp,不捕获匹配的文本
位置指定
(?=exp) 匹配exp前面的位置
(?<=exp) 匹配exp后面的位置
(?!exp) 匹配后面跟的不是exp的位置
(?<!exp) 匹配前面不是exp的位置
-----------------------------------------------------------------------------------------------------------------------------------
例子:
测试1:
假如有下面一串经纬度str,小数点后长度<16,长度不一。
{"lat":"30.769432950801377","lng":"103.9813772899"},{{"lat":"30.6697164","lng":"103.9816054999999947"}
测试1:匹配经纬度末尾4位(引号前4位),以便干掉。
\d{4}(?=\")-----------------------------------
共找到 4 处匹配:
1377
2899
7164
9947
测试2:
{"lat":"30.769432950801377","lng":"103.9813772899"},{{"lat":"30.6697164","lng":"103.9816054999999947"}
经纬度保留小数点后6位,匹配出多余的数字以便干掉:(小数点后第七位到末尾的数字)
表达式为:
(?<=\.\d{6})\d{0,10}(?=\")---------------------------------
共找到 4 处匹配:
950801377
2899
4
4999999947
原文地址:https://www.cnblogs.com/xiaoliu66007/p/9087334.html
时间: 2024-10-18 01:44:57