前言:先来了解一下基础知识。再细说正则表达式~

转义字符  ----   \

转义字符会将与之相邻的字符转换含义。

例如说,希望在一个字符串中输出 “ 号,那么就可以使用在双引号前加入 \ ,这样就能将双引号输出。

通常情况下,我们会用到这样几个转义字符

\n 字符串换行符,  \r 代表文本行结束,  回车用转义字符表示就是 \r\t  ,\t 代表制表符,是 tabel 缩写。

正则表达式-------创建

首先说作用: 是匹配特殊字符或有特殊搭配原则的字符的最佳选择。

接着来看下如何使用正则表达式,它有几种创建方式,我们一一来看下。

1. 直接量的方式创建

var reg = /abc/;   // 这里规定了表达式的格式, /abc/i  表示可以忽略大小写
var str = 'abc';
reg.test(str); // true

2. 构造函数的方式创建

var reg = new RegExp("abc","m");  //第一个参数写规则,第二个是可选项,传入可以是任一属性 i m g,也可以自由组合
var str = "abcd"; // true

3. 构造函数方式创建的另一种表达(加 new 、不加 new)

    var reg = /abc/i;
var reg1 = new RegExp(reg); //此时是利用原有的模式创建了一个新的正则表达式,虽然相同但完全独立。 var reg = /abc/i;
var reg1 = RegExp(reg); // 如果不加 new,则返回的只是这个原有泽政表达式的一个引用,并不会创建新的正则表达式。

正则表达式-------修饰符(i、g、m)

    var reg = /abc/i;   // 忽略大小写
var str = "ABC" // true var reg = /abc/g; // 进行全局匹配
var str2 = "abcabcabcabc" // ['abc','abc','abc','abc'] 不加 g 时,数组中只会出现一个字符串 var reg = /abc/m; // 进行多行匹配
// 下面是一些伪代码
if var reg = /^a/g; // 表示匹配以a开头的所有字符
var str = "abc/na"; // ['a'] 虽然换行了,但是修饰符 g 并不认为这是另起一行了,依然不会识别。 if var reg = /^a/gm; // 表示匹配以a开头的所有字符
var str = "abc/na"; // ['a','a'] 这时就会认识这是一个换行符了,就能进行匹配

正则表达式-------表达式

表达式中的标准可以是多个表达式,这是规定了每一位上的匹配区间

[abc] : 查找方括号之间的任意字符

[^abc] : 查找不在方括号之间的任意字符

[0-9] : 查找0-9之间的任意数字

一种偷懒的写法: [0-9a-Z] : 这里包括了0-9a-Z的所有区间

关于 ^ ,在表达式中表示非,在表达式外表示从哪里开始。

(abc | bcd) : 这里也是表示匹配区间,但必须是abc 或者 bcd

正则表达式-------元字符

.   : 匹配除了换行符以外的所有字符

\w :匹配所有的单词字符以及下划线

\W : 与\w正好取反

\s = (\v \r \f \n \t  空格): 匹配空白字符

\v \r \f \n \t  : 这里需要注意,使用这些匹配元字符的时候,必须是字符串中真实存在的,不能视觉上存在的。

等等......

表达式中也可以写元字符拼接

正则表达式-------量词

n+ : 表示n可以匹配一次到多次

n*  : 表示n可以匹配0次到多次

n? : 表示n可以匹配0次或一次

正则表达式(RegExp)的更多相关文章

  1. javascript类型系统——正则表达式RegExp类型

    × 目录 [1]对象 [2]实例属性 [3]静态属性[4]实例方法 前面的话 前面已经介绍过javascript中正则表达式的基础语法.javascript的RegExp类表示正则表达式,String ...

  2. JavaScript学习笔记-正则表达式(RegExp对象)

    正则表达式(RegExp对象)   1.正则表达式字面量,在脚本加载后编译.若你的正则表达式是常量,使用这种方式可以获得更好的性能,重复使用时不会重新编译: 2.使用构造函数创建的RegExp,提供了 ...

  3. 正则表达式(RegExp)

    正则表达式(RegExp) 如何按一定规则快速查找到需要找寻的内容,js的设计者们给我们提供了一个叫正则表达式(RegExp对象),专门用于处理类似问题. RegExp对象表示正则表达式,它是对字符串 ...

  4. JavaScript数据类型 正则表达式RegExp类型

    前言 上一篇文章已经介绍了正则表达式的基础语法.javascript的RegExp类表示正则表达式,String和RegExp都定义了方法,使用正则表达式可以进行强大的模式匹配和文本检索与替换.本文将 ...

  5. JavaScript -- 时光流逝(六):js中的正则表达式 -- RegExp 对象

    JavaScript -- 知识点回顾篇(六):js中的正则表达式 -- RegExp 对象 1. js正则表达式匹配字符之含义      查找以八进制数 规定的字符.     查找以十六进制数 规定 ...

  6. JavaScript 正则表达式RegExp 和字符串本身的正则表达式

    JavaScript 正则表达式 正则表达式(英语:Regular Expression,在代码中常简写为regex.regexp或RE)使用单个字符串来描述.匹配一系列符合某个句法规则的字符串搜索模 ...

  7. ES9的新特性:正则表达式RegExp

    简介 正则表达式是我们做数据匹配的时候常用的一种工具,虽然正则表达式的语法并不复杂,但是如果多种语法组合起来会给人一种无从下手的感觉. 于是正则表达式成了程序员的噩梦.今天我们来看一下如何在ES9中玩 ...

  8. VBScript: 正则表达式(RegExp对象)

    RegExp对象是VBScript中用于提供简单地正则表达式支持的对象.VBScript中所有和正则表达式有关的属性和方法都有这个对象有关联. 一.RegExp对象的属性和方法(三个属性,三个方法) ...

  9. javascript正则表达式 —— RegExp 对象

    定义 RegExp RegExp 对象用于存储检索模式. 通过 new 关键词来定义 RegExp 对象.以下代码定义了名为 patt1 的 RegExp 对象,其模式是 "e": ...

  10. 从javaScript中学习正则表达式——RegExp

    正则表达式工具:http://regexper.com   由于国外网络可以选择 https://github.com/javallone/regexper-static 离线安装作为本地服务. 正则 ...

随机推荐

  1. Oracle 12cR1 RAC集群安装(一)--环境准备

    基本环境 操作系统版本 RedHat6.7 数据库版本 12.1.0.2 数据库名称 testdb 数据库实例 testdb1.testdb2 (一)安装服务器硬件要求 配置项目 参数要求 网卡 每台 ...

  2. (十五)c#Winform自定义控件-键盘(二)

    前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. 开源地址:https://gitee.com/kwwwvagaa/net_winform_custom_control ...

  3. luoguP3588_[POI2015]PUS

    题意 有一个\(n\)个数的序列,已知其中的\(k\)个数,然后有\(m\)个信息,每个信息给出区间\([l,r]\),和\(k\)个数,表示区间\([l,r]\)中这\(k\)个数大于剩下的\(r- ...

  4. 写论文的第五天 hive安装

    Hive的安装和使用 我们的版本约定: JAVA_HOME=/usr/local /jdk1.8.0_191 HADOOP_HOME=/usr/local/hadoop HIVE_HOME=/usr/ ...

  5. .netcore consul实现服务注册与发现-集群部署

    一.Consul的集群介绍 Consul Agent有两种运行模式:Server和Client.这里的Server和Client只是Consul集群层面的区分,与搭建在Cluster之上的应用服务无关 ...

  6. 重读《学习JavaScript数据结构与算法-第三版》- 第6章 链表(一)

    定场诗 伤情最是晚凉天,憔悴厮人不堪言: 邀酒摧肠三杯醉.寻香惊梦五更寒. 钗头凤斜卿有泪,荼蘼花了我无缘: 小楼寂寞新雨月.也难如钩也难圆. 前言 本章为重读<学习JavaScript数据结构 ...

  7. 如何编写高质量的 JS 函数(1) -- 敲山震虎篇

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/7lCK9cHmunvYlbm7Xi7JxQ作者:杨昆 一千个读者,有一千个哈姆雷特. 此系列文 ...

  8. Java之戳中痛点 - (8)synchronized深度解析

    概览: 简介:作用.地位.不控制并发的影响 用法:对象锁和类锁 多线程访问同步方法的7种情况 性质:可重入.不可中断 原理:加解锁原理.可重入原理.可见性原理 缺陷:效率低.不够灵活.无法预判是否成功 ...

  9. Leetcode之二分法专题-287. 寻找重复数(Find the Duplicate Number)

    Leetcode之二分法专题-287. 寻找重复数(Find the Duplicate Number) 给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和  ...

  10. Leetcode之回溯法专题-212. 单词搜索 II(Word Search II)

    Leetcode之回溯法专题-212. 单词搜索 II(Word Search II) 给定一个二维网格 board 和一个字典中的单词列表 words,找出所有同时在二维网格和字典中出现的单词. 单 ...