JavaScript -- 知识点回顾篇(六):js中的正则表达式 -- RegExp 对象

1. js正则表达式匹配字符之含义

.     查找单个字符,除了换行和行结束符。
\w    查找单词字符。
\W     查找非单词字符。
\d     查找数字。
\D     查找非数字字符。
\s     查找空白字符。
\S     查找非空白字符。
\b     匹配单词边界。
\B     匹配非单词边界。
\0     查找 NULL 字符。
\n     查找换行符。
\f     查找换页符。
\r     查找回车符。
\t     查找制表符。
\v     查找垂直制表符。
\     查找以八进制数 规定的字符。
\x     查找以十六进制数 规定的字符。
\u     查找以十六进制数 规定的 Unicode 字符。

2. 匹配字符的数量及格式的控制

a+     匹配任何包含至少一个 a 的字符串。
a*     匹配任何包含零个或多个 a 的字符串。
a?     匹配任何包含零个或一个 a 的字符串。
a{2}     匹配包含 2个 a 的序列的字符串。
a{2,5}     匹配包含 2 至 5 个 a 的序列的字符串。
a{3,}     匹配包含至少 3 个 a 的序列的字符串。
a$     匹配任何结尾为 a 的字符串。
^a     匹配任何开头为 a 的字符串。
?=a     匹配任何其后紧接指定字符串 a 的字符串。
?!a     匹配任何其后没有紧接指定字符串 a 的字符串。

3. 匹配指定范围内的字符

[abc]     查找方括号之间的任何字符。
[^abc]     查找任何不在方括号之间的字符。
[0-9]     查找任何从 0 至 9 的数字。
[a-z]     查找任何从小写 a 到小写 z 的字符。
[A-Z]     查找任何从大写 A 到大写 Z 的字符。
[A-z]     查找任何从大写 A 到小写 z 的字符。
[abxy]     查找给定集合内的任何字符。
[^abxy]     查找给定集合外的任何字符。
(red|blue|green)     查找任何指定的选项。

4. 修饰符

i     执行对大小写不敏感的匹配。
g     执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
m     执行多行匹配。

5. RegExp 对象的方法
    exec()  方法用于检索字符串中的正则表达式的匹配。返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。

  1. <script type="text/javascript">
  2. var txt1='Hello World 2019 !';
  3. var patt1 = new RegExp(/\d+/g);
  4. var result = patt1.exec(txt1);
  5. document.write("匹配结果: " + result);
  6. </script>

  

    test()  方法用于检测一个字符串是否匹配某个模式。如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false。

  1. <script type="text/javascript">
  2. var txt1='Hello World 2019 and 2020!';
  3. var patt1 = new RegExp("and");
  4. var result = patt1.test(txt1);
  5. document.write("匹配结果: " + result);
  6. </script>

  

JavaScript -- 时光流逝(六):js中的正则表达式 -- RegExp 对象的更多相关文章

  1. js 中的正则表达式RegExp

    1.RegExp对象 1.1 RegExp对象实例的创建 正则表达式模式:     g:表示全局模式,即模式将被用于整个字符串,而非发现第一个匹配项时立即停止:     i:表示不区分大小写,忽略大小 ...

  2. JavaScript -- 时光流逝(十三):DOM -- Console 对象

    JavaScript -- 知识点回顾篇(十三):DOM -- Console 对象 (1) assert() : 如果断言为 false,则在信息到控制台输出错误信息.(2) clear() : 清 ...

  3. JavaScript -- 时光流逝(十一):DOM -- Document 对象

    JavaScript -- 知识点回顾篇(十一):DOM -- Document 对象 (1) document.activeElement: 返回文档中当前获得焦点的元素. <!doctype ...

  4. JS中使用正则表达式替换对象里的大小写

      function parse(obj){ var str = JSON.stringify(obj); var dataObj = str.replace(/Name/g, "name& ...

  5. JS中应用正则表达式转换大小写

    JS中应用正则表达式转换大小写,代码很简单,看代码: 以下首字母大写,其它字母小写 <script type="text/javascript"> function r ...

  6. JS中给正则表达式加变量

    前不久同事询问我js里面怎么给正则中添加变量的问题,遂写篇博客记录下.   一.字面量 其实当我们定义一个字符串,一个数组,一个对象等等的时候,我们习惯用字面量来定义,例如: var s = &quo ...

  7. 如何在JS中应用正则表达式

    背景:在之前的随笔中写过C#中如何使用正则表达式,这篇随笔主要讲如何在js中应用正则表达式 如下代码: $("#zhengze").click(function () { var ...

  8. javascript基础入门之js中的结构分支与循环语句

    javascript基础入门之js中的结构分支与循环语句 程序的结构①顺序结构:自上而下:②选择(分支)结构:多条路径,根据不同的条件,只执行其中一个:③循环结构:重复某些代码④配合特定的语句实现选择 ...

  9. javascript基础入门之js中的数据类型与数据转换01

    javascript基础入门之js中的数据结构与数据转换01 js的组成(ECMAScript.BOM.DOM)        js中的打印语句:        数据类型        变量      ...

随机推荐

  1. Web前端课程设计——个人主页

    大三上学期期末总结,嗯,没错,是上学期,写在新学期开始hhh. 上学期学了一门HTML5+CSS3的课程,也叫Web前端技术,期末的课程设计是写一个个人主页,能够在浏览器中打开的静态网页.通过一学期的 ...

  2. Tomcat类加载架构

    前言 主流的Java Web服务器(Tomcat.Jetty.WebLogic.WebSphere等)都有多个自定义的类加载器以及具备的类加载优势,本篇博文主要是通过以Tomcat为例简单认识Java ...

  3. YTKNetwork源码详解

    本篇是第三篇关于网络请求的,将讲述YTKNetwork源码,上述两篇分别讲述AFNetworking源码解析以及结合自己项目封装AFNetworking. AFNetworking源码解析:https ...

  4. fiddler抓取https请求(android/ios)

    本文转载自:http://blog.csdn.net/songer_xing/article/details/53841401 备注:本人有这样的一个需求,先记录下,以后再进行整理. 在抓包过程中发现 ...

  5. vue使用element-ui的el-input监听不了回车事件解决

    vue使用element-ui的el-input监听不了回车事件,原因应该是element-ui自身封装了一层input标签之后,把原来的事件隐藏了,所以如下代码运行是无响应的: <el-inp ...

  6. 部署WebService

    IIS6环境下部署WebService(部署虚拟目录) 首先,打开IIS管理器, 部署一个网站或者使用默认网站 右击网站选择新建虚拟目录 输入WebService的别名 选择WebService文件路 ...

  7. 路由器动态DNS设置

    路由器中的动态DNS设置非常的简单,只需要注册动态域名服务商的账号,然后在路由器中登录该账号就可以了 一.路由器动态DNS作用 无线路由器连接宽带上网后,路由器会从宽带运营商那里获取一个IP地址,这个 ...

  8. [android] 采用服务录制电话&服务的生命周期

    根据上一节代码里,加入一个录音功能,上传到服务器,就能实现一个录制器 当手机处于通话状态时,开启录音机 获取MediaRecorder对象,通过new出来 调用MediaRecorder对象的setA ...

  9. springboot用户登陆密码两次md5加密

    1.用户端:PASS = MD5(明文 + 固定salt) 2.服务端:PASS = MD5(用户输入 + 随机salt) 引入依赖包 <dependency> <groupId&g ...

  10. java通过Access_JDBC30读取access数据库时无法获取最新插入的记录

    1.编写了一个循环程序,每几秒钟读取一次,数据库中最新一行数据 连接access数据库的方法和查询的信息.之后开一个定时去掉用. package javacommon.util; import jav ...