正则表达式: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. common-logging--源码之SimpleLog

    common-logging源码Log接口 在common-logging的源码中,将log核心类抽象成了一个Log接口. 这里贴出Log接口的源码: /* * Licensed to the Apa ...

  2. scp简单使用

    从10.48.113.11获取目录/home/test    到本地/home目录下 scp  -r    root@10.48.113.11:/home/test       /home 将本地/h ...

  3. Oracle数据库创建用户小结

    前言:使用Oracle开发系统过程中,会涉及到数据库用户的建立,及给该用户分配权限.刚开始接触开发的时候,对这些操作是一种茫茫然的状态.后,经过积累,对这方面有了一定的认识,现总结一些,一则,巩固自身 ...

  4. Codeforce A. Fair Game

    A. Fair Game time limit per test 1 second memory limit per test 256 megabytes input standard input o ...

  5. MVVM之旅(1)创建一个最简单的MVVM程序

    这是MVVM之旅系列文章的第一篇,许多文章和书喜欢在开篇介绍某种技术的诞生背景和意义,但是我觉得对于程序员来说,一个能直接运行起来的程序或许能够更直观的让他们了解这种技术.在这篇文章里,我将带领大家一 ...

  6. nongsanli

    之后的内容只能追加,不可以修改,删除. 1.    mysql可以对字段进行MD5加密, 加密插入:INSERT INTO t_user(id,username,PASSWORD) VALUES('5 ...

  7. Python基础篇(七)

    加上两个下划线变量或者方法变为私有. >>> class Bird: ...    __song = "spark" ...    def sing(self): ...

  8. Android开发之漫漫长途 XIV——RecyclerView

    该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列.该系列引用了<Android开发艺术探索>以及<深入理解And ...

  9. python中的变量,运算符

    范例: name = 'Crossin' myVar = 123 price = 5.99 visible = True “=”的作用是把右边的值赋予给左边的变量. python中有四种较为常见的数据 ...

  10. UbuntuNFS服务器配置

    NFS服务的配置====================1,下载并安装NFS sudo apt-get install nfs-kernel-server 2,配置NFS sudo vi /etc/e ...