前言:这是笔者学习之后自己的理解与整理。如果有错误或者疑问的地方,请大家指正,我会持续更新!

RegExp

  正则表达式是描述字符模式的对象。

  正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。

修饰符

  • i ;  ignorCase 忽略大小写;
  • g ;  globle  全局匹配(如果没有g,则在匹配到第一个后停止,后面的就不管了);
  • m ;  mutiple  执行多行匹配;不太理解这个的用法

方括号[]

  • [abc]; 查找集合范围内的字符;abc是泛指
  • [^abc]; 查找不在集合范围内字符;^在方括号内是"非"的意思;
  • [0-9]; 查找任何 0 到 9 的数字;
  • [a-z]; 查找任何 小写a 到 小写z 之间的字符;
  • [A-Z]; 查找任何 大写A 到 大写Z 之间的字符;
  • (abc); 查找任何指定的选项,当做一个整体;
  • |;或者的意思;必须用()包起来用;

元字符

  • . ;查找除换行和结束字符之外的任意字符;
  • \w;查找数字、字母及下划线;相当于[a-zA-Z0-9_];
  • \W;查找非(数字、字母及下划线);相当于[^a-zA-Z0-9_];
  • \d;查找数字;
  • \D;查找非数字;
  • \s;查找空白字符;
  • \S;查找非空白字符;
  • \b;匹配单词边界;
  • \B;匹配非单词边界;
  • 还有其他的...以后再说;

量词

  • n+;匹配至少有一个n;
  • n*;匹配任意个n;
  • n?;匹配0个或者1个n;
  • n{X};匹配X个n;一个字符串中的n的数量如果多于X个,那就只匹配到X个,后面的不管了;
  • n{X,};匹配至少X个n;
  • n{X,Y};匹配至少X个,最多Y个n;
  • ^n;以n开头,一般写为/^n/;
  • n$;以n结尾,一般写为/n$/;
  • ?=n;匹配任何紧跟其后为n的字符串;如 /is(?= apple)/; 字符串 "This is apple!" 匹配成功,但是查找的是 is apple,匹配的是apple前面的 is;
  • ?!n;匹配任何紧跟其后非n的字符串;如 /is(?!apple)/; 字符串"This is apple!"匹配成功,但是查找的是is !apple,匹配的是This的 is;

RegExp 对象方法

  • RegExpObject.test(string); 检索字符串中指定的值,返回 true 或 false;
  • RegExpObject.exec(string); 检索字符串中指定的值,以数组形式返回找到的值,并确定其位置;如果没找到返回null;

支持正则表达式的String对象的方法有:

  • stringObject.search(RegExpObject); 检索与正则表达式匹配的字符串;如果匹配成功,返回该字符首字母下标;如果没找到,返回-1;
  • stringObject.match(RegExpObject); 检索与正则表达式匹配的字符串;如果匹配成功,以数组形式返回字符;如果没找到,返回null;
  • stringObject.replace(RegExpObject,newString); 检索与正则表达式匹配的字符串;如果匹配成功,则用newString替换字符,并且产生新字符串(不会改变原字符串);
  • stringObject.split(RegExpObject,limit); 检索与正则表达式匹配的字符串;如果匹配成功,则用匹配的字符分割字符串,并且返回一个数组(原字符串不会改变);

javascript 正则表达式的简单操作的更多相关文章

  1. 理清JavaScript正则表达式--下篇

    紧接:"理清JavaScript正则表达式--上篇". 正则在String类中的应用 类String支持四种利用正则表达式的方法.分别是search.replace.match和s ...

  2. JavaScript正则表达式下——相关方法

    上篇博客JavaScript 正则表达式上——基本语法介绍了JavaScript正则表达式的语法,有了这些基本知识,可以看看正则表达式在JavaScript的应用了,在一切开始之前,看看RegExp实 ...

  3. JavaScript 正则表达式上——基本语法

    定义 JavaScript种正则表达式有两种定义方式,定义一个匹配类似 <%XXX%> 的字符串 1. 构造函数 var reg=new RegExp('<%[^%>]+%&g ...

  4. javascript正则表达式简介

      javascript正则表达式 javascript正则表达式 regular expression是一个描述字符模式的对象: ECMAScript中的RegExp类表示正则表达式: String ...

  5. 理清JavaScript正则表达式

    理清JavaScript正则表达式--下篇 紧接:"理清JavaScript正则表达式--上篇". 正则在String类中的应用 类String支持四种利用正则表达式的方法.分别是 ...

  6. 第一百零五节,JavaScript正则表达式

    JavaScript正则表达式 学习要点: 1.什么是正则表达式 2.创建正则表达式 3.获取控制 4.常用的正则 假设用户需要在HTML表单中填写姓名.地址.出生日期等.那么在将表单提交到服务器进一 ...

  7. JavaScript正则表达式学习笔记(二) - 打怪升级

    本文接上篇,基础部分相对薄弱的同学请移步<JavaScript正则表达式学习笔记(一) - 理论基础>.上文介绍了8种JavaScript正则表达式的属性,本文还会追加介绍几种JavaSc ...

  8. javascript 正则表达式补充

    定义 JavaScript种正则表达式有两种定义方式,定义一个匹配类似 <%XXX%> 的字符串 1. 构造函数 var reg=new RegExp('<%[^%>]+%&g ...

  9. JavaScript 正则表达式基础语法

    前言 正则表达式在人们的印象中可能是一堆无法理解的字符,但就是这些符号却实现了字符串的高效操作.通常的情况是,问题本身并不复杂,但没有正则表达式就成了大问题.javascript中的正则表达式作为相当 ...

随机推荐

  1. python datetime库使用和时间加减计算

    datetime库使用 一.操作当前时间 1.获取当前时间 >>> import datetime >>> print datetime.datetime.now( ...

  2. window 下 某个端口被占用

    window 下 某个端口被占用 1. 开始—->运行—->cmd,或者是window+R组合键,调出命令窗口: 2.输入命令:netstat -ano,列出所有端口的情况.在列表中我们观 ...

  3. 自定义控件之canvas变换和裁剪

    1.平移 //构造两个画笔,一个红色,一个绿色 Paint paint_green = generatePaint(Color.GREEN, Paint.Style.STROKE, 3); Paint ...

  4. NetHogs监控Linux的每个进程流量

    在日常运维环境中,我们肯定会遇到以下这种需求: 1.网络流量异常,不知道是哪个程序的流量爆涨? 2.日常需要监控网络实时的流量进去数据 面试装逼系列|这篇文章,让运维监控不再成为你的短板! 学会这 1 ...

  5. 使用editplus等编程工具时UTF-8编码去掉BOM头方法(转载备查)

            Unicode规范中有一个BOM的概念.BOM——Byte Order Mark,就是字节序标记.在这里找到一段关于BOM的说明: 在UCS 编码中有一个叫做"ZERO WI ...

  6. websphere 英文版部署(更新)项目【我】

    websphere 部署(更新)项目 首先在控制台页面依次点左侧,打开应用配置页面: 然后在右侧勾选我们要重新部署的项目,首先点上面的 停止 按钮,等项目停止后,再勾选项目,点上面的  更新 按钮(如 ...

  7. Build Telemetry for Distributed Services之OpenCensus:Tracing2(待续)

    part 1:Tracing1 Sampling Sampling Samplers Global sampler Per span sampler Rules References

  8. 好用的开源SVN仓库

    1.地址 https://svnbucket.com/#/projects 2.简单注册使用即可

  9. 有关Linux

    关于nginx https://www.cnblogs.com/jingmoxukong/p/5945200.html 停止命令 sudo systemctl stop nginx.service

  10. Python网络编程之TCP套接字简单用法示例

    Python网络编程之TCP套接字简单用法示例 本文实例讲述了Python网络编程之TCP套接字简单用法.分享给大家供大家参考,具体如下: 上学期学的计算机网络,因为之前还未学习python,而jav ...