zoukankan      html  css  js  c++  java
  • 正则 ?<= 和 ?= 用法,范例

    (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

  • 相关阅读:
    POJ 2752 Seek the Name, Seek the Fame
    POJ 2406 Power Strings
    KMP 算法总结
    SGU 275 To xor or not to xor
    hihocoder 1196 高斯消元.二
    hihoCoder 1195 高斯消元.一
    UvaLive 5026 Building Roads
    HDU 2196 computer
    Notions of Flow Networks and Flows
    C/C++代码中的笔误
  • 原文地址:https://www.cnblogs.com/xiaoliu66007/p/9087334.html
Copyright © 2011-2022 走看看