正则表达式:描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

1.修饰符

  i->忽略大小写;

  g->全部匹配;

  m->把\n识别成多行;

2.中括号

  [abc]->匹配中括号中的任意一个字符;

  [^abc]->匹配除了中括号中的任意一个字符;

  (abc)|(zxc)->匹配abc或zxc;

3.元字符

  .-> 任意一个字符

  \w -> 任意一个字母/数字/下划线

  \W -> 任意一个非 字母/数字/下划线

  \d -> 任意一个数字

  \D -> 任意一个非数字

  \s -> 任意一个空格

  \S -> 任意一个非空格

  \b -> 单词边界

  \B -> 非单词边界

  \n -> 换行符

4.量词

  + -> 匹配一个或者多个

  * -> 匹配任意多个

    .* -> 模糊匹配多个字符

    .*? -> 贪婪模式

  ? -> 匹配1个或者0个

  {3} -> 匹配3个

  {3,5} -> 匹配3个到五个

  {3,} -> 匹配三个以上

  ^ -> 匹配行首

  $ -> 匹配行尾

  ?=a -> 匹配后面紧跟a的

  ?!a -> 匹配后面不紧跟a的

4.js中常使用正则的方法

  search();

  match();

  replace();

  split();

5.实例

  ①//匹配开始为139的手机号码

  str="13969324896";

if(str.match(/^139\d{8}$/)){
        alert("ok");
    }else{
        alert("no");
    }

  ②//匹配邮箱

  str="wrr@qq.com";

if(str.match(/^\w+@\w+\.\w+$/)){
        alert("ok");
    }else{
        alert("no");
    }

  ③//向后引用的特殊匹配,将2018-06-21替换成2018/06/21

  data="2018-06-21";
    time=data.replace(/(\d+)\-(\d+)\-(\d+)/,"$1/$2/$3");//三个圆括号不能省略,圆括号中的内容会自动依次替换成$1,$2,$3
    alert(time);

  

2018-06-21 js正则表达式的更多相关文章

  1. 初识JS正则表达式

    初识JS正则表达式 看到的使用的正则表达式练习:http://www.cnblogs.com/wenanry/archive/2010/09/06/1819552.html PS:本文参考李炎恢JS笔 ...

  2. JS正则表达式大全(整理详细且实用)

    JS正则表达式大全(整理详细且实用).需要的朋友可以过来参考下,希望对大家有所帮助!! 正则表达式中的特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释, ...

  3. 《JS正则表达式》

    1.精通 JS正则表达式: http://www.cnblogs.com/aaronjs/archive/2012/06/30/2570970.html 2.js常用正则表达式: http://www ...

  4. 常用js正则表达式大全

    常用js正则表达式大全.一.校验数字的js正则表达式 1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和 ...

  5. 【2018.06.26NOIP模拟】T2号码bachelor 【数位DP】*

    [2018.06.26NOIP模拟]T2号码bachelor 题目描述 Mike 正在在忙碌地发着各种各样的的短信.旁边的同学 Tom 注意到,Mike 发出短信的接收方手机号码似乎都满足着特别的性质 ...

  6. js 常用js正则表达式大全

    一.校验数字的js正则表达式   1 数字:^[0-9]*$     2 n位的数字:^d{n}$     3 至少n位的数字:^d{n,}$     4 m-n位的数字:^d{m,n}$     5 ...

  7. JS正则表达式完整教程

    JS正则表达式完整教程(略长) 引言 亲爱的读者朋友,如果你点开了这篇文章,说明你对正则很感兴趣. 想必你也了解正则的重要性,在我看来正则表达式是衡量程序员水平的一个侧面标准. 关于正则表达式的教程, ...

  8. JS正则表达式常用总结

    正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...

  9. 使用外部web组件-----easyUI、jQueryUI、Bootstrap、js正则表达式

    1.使用外部web组件,以Bootstrap为例 <head> <link rel='stylesheet'  href='bootstrap-3.3.0-dist/dist/css ...

随机推荐

  1. php时间:获取上一个月,本月天数,下一个月

    时间戳转日期 date() 日期转时间戳 strtotime() 当前时间戳time() 获取当前月的天数: $i=; $y=; echo date("t",strtotime(& ...

  2. mysql 复制表结构和数据

    CREATE TABLE 新表名 SELECT 字段 as 新字段,字段 as 新字段.....from 旧表名:

  3. ubuntu 下 使用GTK+、sqlite3、c语言的学生系统

    使用GTK+2.0.sqlite3数据库.c语言 的简易的学生管理系统 实现了基本的增删查改 效果图:

  4. jQuery动态时钟

    效果图: 引用的jQuery.js自己百度 代码: <!DOCTYPE html> <html> <head> <meta charset="utf ...

  5. if __name__ == '__main__'到底是什么?

    引子 要搞清楚这个问题,可以先听一个故事~~~ 像我们做事一样,都需要一个起始点,终点存在与否无关紧要.编程也是一样,任何程序都有一个入口,在所谓的静态编译语言中,如Java的入口是一个名字叫做Mai ...

  6. 解决material UI中弹窗(dialog、popover等)内容被遮挡问题

    在material ui中有几种弹出层,比如:dialog.popover等,这些弹出层都会遇到的一个公共问题是: 假如弹出层中的内容变化了,弹出层的位置并不会重新定位. 这样,假如一开始弹出层定位在 ...

  7. memcached 原子性操作 CAS模式

    2019独角兽企业重金招聘Python工程师标准>>> 应用场景分析: 如原来MEMCACHED中的KES的内容为A,客户端C1和客户端C2都把A取了出来,C1往准备往其中加B,C2 ...

  8. Jdbc批处理一点异同

    同样的代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public class TestBatch {   public stati ...

  9. Java 线程池(ThreadPoolExecutor)原理分析与实际运用

    在我们的开发中"池"的概念并不罕见,有数据库连接池.线程池.对象池.常量池等等.下面我们主要针对线程池来一步一步揭开线程池的面纱. 有关java线程技术文章还可以推荐阅读:< ...

  10. 数学--数论--HDU 2104 丢手绢(离散数学 mod N+ 剩余类 生成元)+(最大公约数)

    The Children's Day has passed for some days .Has you remembered something happened at your childhood ...