码迷,mamicode.com
首页 > 其他好文 > 详细

正则 ?<= 和 ?= 用法,范例

时间:2018-05-25 13:35:51      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:长度   nbsp   col   表达   style   name   pre   数字   命名   

 

(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

 

正则 ?<= 和 ?= 用法,范例

标签:长度   nbsp   col   表达   style   name   pre   数字   命名   

原文地址:https://www.cnblogs.com/xiaoliu66007/p/9087334.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!