文档章节

javaScript基础熟悉(四)

蒙星
 蒙星
发布于 2016/11/19 17:32
字数 1302
阅读 0
收藏 0
点赞 0
评论 0

RegExp 对象

  • 语法=>/pattern/attributes
  • 创建 RegExp 对象的语法:
new RegExp(pattern, attributes);
  • 参数

    • 参数 pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式。
    • 参数 attributes 是一个可选的字符串,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。ECMAScript 标准化之前,不支持 m 属性。如果 pattern 是正则表达式,而不是字符串,则必须省略该参数。
  • 返回值

    • 一个新的 RegExp 对象,具有指定的模式和标志。如果参数 pattern 是正则表达式而不是字符串,那么 RegExp() 构造函数将用与指定的 RegExp 相同的模式和标志创建一个新的 RegExp 对象。
    • 如果不用 new 运算符,而将 RegExp() 作为函数调用,那么它的行为与用 new 运算符调用时一样,只是当 pattern 是正则表达式时,它只返回 pattern,而不再创建一个新的 RegExp 对象。
  • 修饰符

    • i 执行对大小写不敏感的匹配
    • g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
    • m 执行多行匹配。
  • 元字符

    • . 查找单个字符,除了换行和行结束符。
    • \w 查找单词字符。
    • \W 查找非单词字符。
    • \d 查找数字。
    • \D 查找非数字字符。
    • \s 查找空白字符。
    • \S 查找非空白字符。
    • \b 匹配单词边界。
    • \B 匹配非单词边界。
    • \0 查找 NUL 字符。
    • \n 查找换行符。
    • \f 查找换页符。
    • \r 查找回车符。
    • \t 查找制表符。
    • \v 查找垂直制表符。
    • \xxx 查找以八进制数 xxx 规定的字符。
    • \xdd 查找以十六进制数 dd 规定的字符。
    • \uxxxx 查找以十六进制数 xxxx 规定的 Unicode 字符。
  • 量词

    • n+ 匹配任何包含至少一个 n 的字符串。
    • n* 匹配任何包含零个或多个 n 的字符串。
    • n? 匹配任何包含零个或一个 n 的字符串。
    • n{X} 匹配包含 X 个 n 的序列的字符串。
    • n{X,Y} 匹配包含 X 或 Y 个 n 的序列的字符串。
    • n{X,} 匹配包含至少 X 个 n 的序列的字符串。
    • n$ 匹配任何结尾为 n 的字符串。
    • ^n 匹配任何开头为 n 的字符串。
    • ?=n 匹配任何其后紧接指定字符串 n 的字符串。
    • ?!n 匹配任何其后没有紧接指定字符串 n 的字符串。
  • RegExp 对象属性

//语法 正则对象.属性
var patt1 = new RegExp("W3");
patt1.global;
patt1.ignoreCase;
patt1.lastIndex;
patt1.multiline;
patt1.source;
- global	RegExp 对象是否具有标志 g。	 
- ignoreCase	RegExp 对象是否具有标志 i。	 
- lastIndex	一个整数,标示开始下一次匹配的字符位置。	 
- multiline	RegExp 对象是否具有标志 m。	 
- source	正则表达式的源文本。	 
  • RegExp 对象方法
    • compile 编译正则表达式。
RegExpObject.compile(regexp,modifier)
	- 参数	描述
	- regexp	正则表达式。
	- modifier	规定匹配的类型。"g" 用于全局匹配,"i" 用于区分大小写,"gi" 用于全局区分大小写的匹配。
- exec	检索字符串中指定的值。返回找到的值,并确定其位置。
RegExpObject.exec(string)
//lastIndex将被赋值
- test	检索字符串中指定的值。返回 true 或 false。
RegExpObject.test(string)
//如果字符串string中含有与RegExpObject匹配的文本,则返回true,否则返回false。
  • 支持正则表达式的 String 对象的方法
    • search 检索与正则表达式相匹配的值。
stringObject.search(regexp)
//返回stringObject 中第一个与 regexp 相匹配的子串的起始位置。没有则返回-1
- match	找到一个或多个正则表达式的匹配。
stringObject.match(searchvalue)
//searchvalue	必需。规定要检索的字符串值。
stringObject.match(regexp)
//regexp	必需。规定要匹配的模式的 RegExp 对象。如果该参数不是 RegExp 对象,则需要首先把它传递给 RegExp 构造函数,将其转换为 RegExp 对象。
- replace	替换与正则表达式匹配的子串。
stringObject.replace(regexp/substr,replacement)
	### 参数	描述
	- regexp/substr	 必需。规定子字符串或要替换的模式的 RegExp 对象。请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。
	- replacement	必需。一个字符串值。规定了替换文本或生成替换文本的函数。
	### 字符	替换文本
	- $1、$2、...、$99	与 regexp 中的第 1 到第 99 个子表达式相匹配的文本。
	- $&	与 regexp 相匹配的子串。
	- $`	位于匹配子串左侧的文本。
	- $'	位于匹配子串右侧的文本。
	- $$	直接量符号。
- split	把字符串分割为字符串数组。
stringObject.split(separator,howmany)
	### 参数	描述
	- separator	必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
	- howmany	可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。

© 著作权归作者所有

共有 人打赏支持
蒙星
粉丝 1
博文 5
码字总数 5067
作品 0
学习Javascript的8张思维导图

分别归类为:  javascript变量  javascript运算符  javascript数组  javascript流程语句  javascript字符串函数  javascript函数基础  javascript基础DOM操作  javascript正则表达式...

thinkyoung ⋅ 2014/09/23 ⋅ 0

PHP学习路线图 最全PHP自学指南

对于广大零基础的PHP自学者,往往不知道如何系统的学习PHP,导致平白浪费了很多时间。本文将为大家带来最详细的php学习路线图,同时还会附上相应的权威教程,让广大PHP自学者少走许多弯路。 ...

W3Cschool小编 ⋅ 04/24 ⋅ 0

AJAX基础之JavaScript基础与增强(一)

一、什么是JavaScript   JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言、Java 脚本语言(Java小程序)一起实现...

architect刘源源 ⋅ 05/08 ⋅ 0

前端基础之JavaScript

一、JavaScript的历史 略 二、ECMAScript 注:ES6就是指ECMAScript 6。 尽管 ECMAScript 是一个重要的标准,但它并不是 JavaScript 唯一的部分,当然,也不是唯一被标准化的部分。实际上,一...

西鼠 ⋅ 05/09 ⋅ 0

python_day14_前端_JS-重写

说明 ECMA(欧洲计算机制造协会)   ECMA(欧洲计算机制造协会)定义了ECMA-262规范.国际标准化组织及国际电工委员会(ISO/IEC)也采纳 ECMAScript 作为标准(ISO/IEC-16262)。从此,Web 浏览...

812374156 ⋅ 05/25 ⋅ 0

JavaWeb01-HTML篇笔记(七)

.1 案例三:完成对注册页面的数据的简单校验.1.1.1 需求: 对注册页面的数据进行非空的简单校验!!!如果有某个值没有输入,点击提交,弹出一个对话框进行提示!! 1.1.2 分析:1.1.2.1 技术分...

我是小谷粒 ⋅ 04/28 ⋅ 0

前端学习之路(从入门到入坑...)

学习前端两年多了,拿了阿里巴巴实现offer,想结合个人经历总结的前端入门方法,总结从零基础到具备前端基本技能的道路、学习方法、资料。由于能力有限,不能保证面面俱到,只是作为入门参考...

阿小庆 ⋅ 06/14 ⋅ 0

weex eros框架源码解析

weex eros是基于alibaba weex框架进行二次封装的客户端跨平台开发框架,主要是为前端开发者(可以不用熟悉客户端开发)提供的一站式客户端app开发解决方案。官网地址为:https://bmfe.github...

雅爸学技术 ⋅ 05/27 ⋅ 0

谷歌发布 Grasshopper,帮助用户学习 JavaScript

近日,谷歌内部孵化器发布了一款名为Grasshopper的应用程序,旨在帮助用户学习JavaScript语言。这款应用将JavaScript教学内容包含在一系列有趣的游戏中,其中包括调用函数,变量和字符串等内...

达尔文 ⋅ 04/21 ⋅ 0

WebAssembly 再添一员猛将:将支持使用 Go 语言

WebAssembly 在 2018 年第一季度算得上是真正取得了成功,这是自 Web 诞生以来首个 JavaScript 原生替代方案。现在,Go 语言也宣布加入 wasm! 在 Wasm 平台上添加对 Golang 的支持将被添加到...

局长 ⋅ 04/15 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

IDEA创建SpringMVC+Mybatis+Maven项目

视频如下(加载有点慢请见谅,服务器不太好): 视频

影狼 ⋅ 27分钟前 ⋅ 0

前阿里P8架构师:精准定制Java架构师学习计划!

可以说,Java是现阶段中国互联网公司中,覆盖度最广的研发语言,掌握了Java技术体系,不管在成熟的大公司,快速发展的公司,还是创业阶段的公司,都能有立足之地。 有不少朋友问,除了掌握J...

java高级架构牛人 ⋅ 30分钟前 ⋅ 0

zookeper学习

https://blog.csdn.net/u012152619/article/category/6470028

~少司命~ ⋅ 31分钟前 ⋅ 0

Spring MVC ,JSON,JQuery,不懂JQuery,跳过了

/spring-mvc-study/src/main/webapp/course_json.jsp <%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD ......

颖伙虫 ⋅ 32分钟前 ⋅ 0

2018上海云栖大会workshop-日志数据采集与分析对接

摘要: 日志数据采集与分析对接 课程描述 通过日志服务采集用户、数据库、业务等访问数据。演示对于业务日志分析与处理,程序日志查询与监控,打通日志与数据仓库对接案例。 日志种类 网站访...

阿里云云栖社区 ⋅ 32分钟前 ⋅ 0

mahout demo

package com.datamine.CollaborativeFiltering.mysql; import org.apache.mahout.cf.taste.impl.neighborhood.NearestNUserNeighborhood; import org.apache.mahout.cf.taste.impl.recommend......

xiaomin0322 ⋅ 34分钟前 ⋅ 0

red hat openstack 12配置要求

安装 openstack 之前,一般要规划整个系统中,到底要多少台机器来参与openstack, 根据rhosp12的官方文档: 最低要求是3台物理机,1台作为director,一台作为 controller ,一台作为computer....

tututu_jiang ⋅ 35分钟前 ⋅ 0

Rocket-Chip在GitHub上的各个源码

在github上通过搜索Rocket-chip可以得到36个结果:其中 https://github.com/freechipsproject/rocket-chip https://github.com/ucb-bar/riscv-boom https://github.com/ucb-bar/fpga-zynq (......

whoisliang ⋅ 40分钟前 ⋅ 0

【HAVENT原创】CentOS 6.5 下 Nginx 的安装与配置

nginx是轻量级的Web服务器、反向代理服务器及邮件服务器,具有占用内存少,并发能力强的优点,已被广泛应用。本文介绍目前最新版本 1.12.2 的安装。 各版本nginx下载地址:http://nginx.org/...

HAVENT ⋅ 46分钟前 ⋅ 0

查看linux系统重启之前的log -- last_kmsg

当 Linux Kernel 出现 BUG 的时候,后走入 panic flow,这个时候由于 Kernel 出现了严重的问题,adbd 也无法响应 adb 连接请求,这个时候想透过读取 Kernel Log Buffer 来看 Kernel Log 是不...

zyzzu ⋅ 47分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部