zoukankan      html  css  js  c++  java
  • JS 正则

    正则表达式的两大功能:
      - 判断字符串是否符合规定的正则
      - 获取匹配的数据

    正则表达式两大方法的基本介绍及应用:

      test   - 判断字符串是否符合规定的正则 

          rep = /d+/;
          rep.test("asdfoiklfasdf89asdfasdf") //默认只要存在符合的就返回true。
          # true


          rep = /^d+$/;
          rep.test("891")
          # true

      exec  - 获取匹配的数据
          rep = /d+/;
          str = "wangshen_67_houyafa_20"
          rep.exec(str)
          # ["67"]

          正则表达式的分组实现
          var test="JavaScript is more fun than Java or JavaBeans!
          var pattern = /Java(w*)/;
          pattern.exec(test)
          # ["JavaScript", "Script"]

          

          正则表达式的全局匹配
          var test="JavaScript is more fun than Java or JavaBeans!"
          var pattern = /Javaw*/g;
          pattern.exec(test)
          # ["JavaScript"]
          pattern.exec(test)
          # ["Java"]
          pattern.exec(test)
          # ["JavaBeans"]
          pattern.exec(test)
          # null
          pattern.exec(test)
          # ["JavaScript"]

          var test="JavaScript is more fun than Java or JavaBeans!"
          var pattern = /Java(w*)/g;
          pattern.exec(test)
          # ["JavaScript",'Script']
          pattern.exec(test)
          # ["Java", ""]
          pattern.exec(test)
          # ["JavaBeans", "Beans"]
          pattern.exec(test)
          # null

      多行匹配:/.../m 表示多行匹配
          默认就是多行匹配
          test="test content JavaScript is more fun than Java or JavaBeans!"
          # "test content
          JavaScript is more fun than Java or JavaBeans!"
          var pattern=/Java(w*)/
          # undefined
          pattern.exec(test);
          # ["JavaScript", "Script"]


        加上/.../m后
          test="JavaScript is more fun than Java or JavaBeans!"
          # "JavaScript is more fun than
          Java or JavaBeans!"
          var pattern=/^Java(w*)/gm
          # undefined
          pattern.exec(test)
          # (2) ["JavaScript", "Script", index: 0, input: "JavaScript is more fun than ↵Java or JavaBeans!"]
          pattern.exec(test)
          # (2) ["Java", "", index: 29, input: "JavaScript is more fun than ↵Java or JavaBeans!"]
          pattern.exec(test)
          # null
          通过上面的实例可以得知,/.../m表示的多行匹配是字符串之间用换行符换行后,将换行后的开头作为字符串的开头。

  • 相关阅读:
    三(奇数)等分两者中间有间隔,两端没间隔
    网易云音乐基于 Flink + Kafka 的实时数仓建设实践
    【电商知识】关于电商定价的几个策略
    硬核!15张图解Redis为什么这么快
    用户画像实践:神策标签生产引擎架构
    数据产品实战(二):ABTest平台
    R代码|基于特征重要性的特征排序代码
    R代码|K均值算法R语言代码
    一文了解R语言数据分析 ----主成分分析
    全网最全 | MySQL EXPLAIN 完全解读
  • 原文地址:https://www.cnblogs.com/zoe233/p/7567089.html
Copyright © 2011-2022 走看看