一、正则表达式

正则表达式Regular Expression,可以简写为regexp、regex或是RE

正则表达式使用单个字符串来描述或是匹配一系列符合某个句法规则的字符串模型。

按照某种规则去匹配符合条件的字符串。

什么是正则表达式?

正则表达式是由一个字符序列形成的搜索模式(可以用搜索模式来描述想要查询的内容)。

正则表达式可以是一个简单的字符,或是更复杂的模式

正则表达式可以用于所有文本搜索和替换操作

通过一个例子来感受以下正则表达式:

.find./-name *.text;
//在当前目录下查找所有 .txt文件(*表示任意字符)

二、正则表达式的语法结构

(一)语法格式:

/ 正则表达式 / 控制符(或叫修饰符)

其中控制符是可选的。

var patt = /Byronper/g

实例解析:

  • /Byronper/g  是一个正则表达式。
  • Byronper  是一个正则表达式主体 (用于检索)。
  • g  是一个控制符 (搜索不区分大小写)。

(二)JavaScript通过内置对象RegExp支持正则表达式

又两种方法可以实例化RegExp对象

  • 字面量
  • 构造函数

如何理解实例化?

人是一个类,小明(一个具体的·人)是类的实体。所谓实例化就是:小明从孕育到出生这样一个过程。

var reg=new RegExp( );这也是实例化,创建了名为reg的对象。

面向对象的编程中,用类创建对象的过程即为实例化。

实例:

1、使用字面量

replace替换;replace(reg,"IS");搜索字符串中的is,将其替换为“IS”;

g表示全局(控制符);\b表示单词界限

2、使用构造函数

"\\bis\\b"正则表达式的文本。使用两个\,因为JS中\本来就是特殊字符,如果想使用就需要转义符 \ 转义;

new控制符调用构造函数;

不使用"g"时,IS只替换检索到的第一个字符,第二个第三个都不替换。使用用"g"时,所有对应的字符都替换了;

 三、修饰符(控制符)

  • g:global   全文搜索。如果不添加,就搜索到第一个即匹配停止;
  • i:ignore case   忽略大小写。默认大小写敏感,大小写不同;
  • m:multiple lines   多行搜索;

实例:

i用法,忽略大小写

使用了i 控制符后,无论是大写还是小写都替换为G。

四、元字符

正则表达式是由两种基本数字类型组成:

  • 原义文本字符(类似abcd这样的普通字符)
  • 元字符

元字符,又叫字符集,就是用一些特殊符号(非字母字符)表示特定种类的字符或位置。

常用的元字符

五、正则表达式的目的

给定一个正则表达式和另一个字符串,我们可以达到如下的目的:

  • 1. 给定的字符串是否符合正则表达式的过滤逻辑(称作"匹配"):
  • 2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。

JavaScript正则表达式简介(一)的更多相关文章

  1. javascript正则表达式简介

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

  2. JavaScript正则表达式详解(一)正则表达式入门

    JavaScript正则表达式是很多JavaScript开发人员比较头疼的事情,也很多人不愿意学习,只是必要的时候上网查一下就可以啦~本文中详细的把JavaScript正则表达式的用法进行了列表,希望 ...

  3. JavaScript正则表达式详解(二)JavaScript中正则表达式函数详解

    二.JavaScript中正则表达式函数详解(exec, test, match, replace, search, split) 1.使用正则表达式的方法去匹配查找字符串 1.1. exec方法详解 ...

  4. javascript正则表达式语法

    1. 正则表达式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的 ...

  5. javascript 正则表达式 详细入门教程

    1.什么是正则表达式 定义: 一个用来搜索.匹配.处理一些符合特定语法规则的一个强大的字符串处理工具. 用途: 进行特定字符和字符串的搜索 替换字符串中指定的字符或字符串 验证字符串是否符合需求 2. ...

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

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

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

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

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

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

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

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

随机推荐

  1. VMware克隆虚拟机后mac地址重新设置

    ifconfig eth1   确定新网卡的MAC地址. nmcli con 确定新网卡的UUID vim /etc/udev/rules.d/70-persistent-net.rules 把原et ...

  2. 【HBase】四、HBase的安装及命令行接口

      通过前面的介绍,对HBase数据模型,运行机制等理论基本了解,接下来从实践的角度介绍HBase的安装以及其各种接口的使用方法. 1.HBase的安装   HBase安装很简单,和所有的Hadoop ...

  3. 初学node.js-nodejs中实现删除用户路由

    一.users_model.js  功能:定义用户对象模型 var mongoose=require('mongoose'), Schema=mongoose.Schema; var UserSche ...

  4. java基础/数据加解密(Mooc)

    一.消息摘要算法 常用摘要算法: 以下 (HEX)内容:bc指Bouncy Castle  |  cc指:Apache commons Codec 1.消息摘要算法MD5及MD族(MD2,MD4) 消 ...

  5. Nginx跨域问题

    Nginx跨域无法访问,通常报错: Failed to load http://172.18.6.30:8086/CityServlet: No 'Access-Control-Allow-Origi ...

  6. C/C++ 防止头文件重复包含 #pragma once 与 #ifndef 的区别

    为了避免同一个头文件被多重包含/重复包含,有两种方式: 方式一: #ifndef XXX #define XXX ... ...  //声明语句 #endif  //XXX 方式二: #pragma ...

  7. python day1-requests

    一.什么是requests Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库. 相对于urllib库(自带,无需手动安装)而言, ...

  8. ajax后台请求两种方法(js和jQuery)

    (1)js的ajax var xmlHttp; if(window.XMLHttpRequest){ xmlHttp=new XMLHttpRequest(); }else{ xmlHttp=new ...

  9. WNMP环境搭建步骤 nginx1.4.3+php-5.3.27+mysql-5.5+RunHiddenConsole

    安装目录:D:/webServer/所需软件:     mysql-installer-community-5.5.34.0.msi         下载:http://cdn.mysql.com/D ...

  10. px-em-pt等字体的不同