正则表达式:Regular Expression。使用单个字符串来描述,匹配一系列符合某个句法规则的字符串。即按照某种规则去匹配符合条件的字符串。正则表达式就是规则。

\b 单词边界

regexp对象:

加g表示全局,匹配所有

不加只匹配一次

加i表示忽略大小写,默认是不忽略

m代表多行搜索。

正则表达式由两种基本字符类型组成

  1. 原义文本字符
  2. 元字符:在正则表达式中有特殊含义的非字母字符

\t 水平制表符

\v 垂直制表符

\n 换行符

\r 回车符

\0 空字符

\f 换页符

\cX 与X对应的控制字符(Ctrl+X)

使用元字符[]来构建一个简单的类,符合某些特性的对象,是泛指。如[abc]把字符a,b,c归为一类。

^在中括号中代表反义。

预定义类

. [^\r\n]

\d [0-9]

\D [^0-9]

\s [\t\n\x0B\f\r]

\S [^\t\n\x0B\f\r]

\w [a-zA-Z_0-9]

\W [^a-zA-Z_0-9]

边界匹配字符

^ 以xxx开始

$以xxx结束

\b 单词边界

\B 非单词边界

量词:

? 出现0次或一次(最多一次

  • 出现一次或多次(至少一次
  • 出现0次或多次(任意次

    {n} 出现n次

    {n,m} 出现n到m次

    {n,} 至少出现n次

非贪婪模式,量词加?

\d{3,6}?

用括号可以分组,如可以用分组加量词

用|可以达到或的效果

反向引用

用$捕获分组

分组内加上?;可以忽略分组

正向前瞻 exp(?=assert)

负向前瞻 exp(?!assert)

断言部分不包含在规则里,如替换时断言部分不替换

正则对象属性

global: 是否全文搜索

ingore case: 是否大小写敏感

multiline: 多行搜索

默认皆为false,只读,不能设值

lastIndex: 当前表达式匹配内容的最后一个字符的下一个位置,即下一次搜索的开始位置

source: 正则表达式的文本字符串

test() ,会造成一些坑,跟lastIndex有关

exec() 没匹配返回null,否则返回结果数组

javascript正则表达式的一些笔记的更多相关文章

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

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

  2. 慕课笔记-JavaScript正则表达式

    目录 慕课笔记-JavaScript正则表达式笔记 概述 RegExp对象 修饰符 元字符 字符类 范围类 预定义类 预定义字符 边界 量词 贪婪模式 分组 或(使用竖线表示) 反向引用 忽略分组 前 ...

  3. javascript正则表达式 - 学习笔记

    JavaScript 正则表达式 学习笔记 标签(空格分隔): 基础 JavaScript 正则表达式是用于匹配字符串中字符组合的模式.在javascript中,正则表达式也是对象.这些模式被用于Re ...

  4. web前端学习(四)JavaScript学习笔记部分(10)-- JavaScript正则表达式

    1.JavaScript正则表达式课程概要 方便查找字符串.数字.特殊字串等等 2.正则表达式的介绍 RegExp是正则表达式的缩写 当检索某个文本时,可以使用一种模式来描述要检索的内容.RegExp ...

  5. Javascript 正则表达式简述

    本文地址:http://www.cnblogs.com/blackmanba/p/regular-expressions-introduce.html 或者 http://forkme.info/re ...

  6. JavaScript正则表达式,你真的知道?

    一.前言 粗浅的编写正则表达式,是造成性能瓶颈的主要原因.如下: var reg1 = /(A+A+)+B/; var reg2 = /AA+B/; 上述两个正则表达式,匹配效果是一样的,但是,效率就 ...

  7. <JavaScript语言精粹>--<读书笔记三>之replace()与正则

    今天有人问我repalce(),他那个题目很有意思.我也不会做,于是我就去查,结果发现就是最基础的知识的延伸. 所以啊最基础的知识才是很重要的,千万不能忽略,抓起JS就写代码完全不知到所以然,只知道写 ...

  8. 【JS】javascript 正则表达式 大全 总结

    javascript 正则表达式 大全 总结 参考整理了一些javascript正则表达式 目的一:自我复习归纳总结 目的二:共享方便大家搜索 微信:wixf150 验证数字:^[0-9]*$ 验证n ...

  9. 理清JavaScript正则表达式--上篇

    在JavaScript中,正则表达式由RegExp对象表示.RegExp对象呢,又可以通过直接量和构造函数RegExp两种方式创建,分别如下: //直接量 var re = /pattern/[g | ...

随机推荐

  1. Linux时间转标准时间

    [root@nhserver2 ~]# date -d '1970-1-1 0:0:0 GMT + 1394592071 seconds'Wed Mar 12 10:41:11 CST 2014

  2. 【转】centos安装vim7.4

    centos安装vim7.4   系统版本centos6.4; root权限 su - root     卸载 $ rpm -qa | grep vim $ yum remove vim vim-en ...

  3. javacript 组合使用构造函数模式和原型模式

    构造函数模式创建对象 基本方法 function Person(name,age){ this.name=name; this.age=age; this.sayName=function(){ al ...

  4. auto和bool

    一.auto' 1.只要在函数内部定义变量,默认是auto int num 等价于  auto int num = 10; 2.C语言中的auto关键字就是自动分配自动释放 二.bool类型 1.头文 ...

  5. redis 简易监控的几种方法

    简介 针对Redis 实现性能监控的几种方法 一.使用info命令 命令说明 127.0.0.1:6380> info # Server redis_version:3.2.11 redis_g ...

  6. Jmeter之http性能测试实战 非GUI模式压测 NON-GUI模式 结果解析TPS——干货(十一)

    性能测试计划 性能测试用例 录制脚本 性能测试结果 性能测试报告 性能测试监控报告 准备工作 从脚本已录制成功之后开始进行压测 安装Jmeter拓展插件 查看 Transactions per Sec ...

  7. python布尔类型

    布尔类型 python当中下面的值在作为布尔表达式时,会被解释器看作False: 1.None: 2.False: 3.任何为0的数字类型,如:0,0.0,0j: 4.任何空序列,如:'',(),[] ...

  8. 关于dom4j解析xml

    一:相关jar包 dom4j-1.6.1.jar 二:用例xml文件 三:解析 注:可能有的小白不知道如果获取节点,so,you can: for (Iterator<Element> i ...

  9. Java对Jar文件的操作[转]

    原文地址:http://www.cnblogs.com/mailingfeng/archive/2012/04/24/2122160.html  String dirPath = System.get ...

  10. 洛谷 [P2762] 太空飞行计划问题

    最大权闭合子图 胡伯涛论文真是个好东西.jpg 求一个有向图的最大权闭合子图,常应用于有先决条件的最优化问题中 将所有正权点与源点相连,容量为点权; 将所有负权点与汇点相连,容量为点权的相反数; 将原 ...