javascript 正则表达式的简单操作
前言:这是笔者学习之后自己的理解与整理。如果有错误或者疑问的地方,请大家指正,我会持续更新!
RegExp
正则表达式是描述字符模式的对象。
正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。
修饰符
- i ; ignorCase 忽略大小写;
- g ; globle 全局匹配(如果没有g,则在匹配到第一个后停止,后面的就不管了);
- m ; mutiple 执行多行匹配;不太理解这个的用法
方括号[]
- [abc]; 查找集合范围内的字符;abc是泛指
- [^abc]; 查找不在集合范围内字符;^在方括号内是"非"的意思;
- [0-9]; 查找任何 0 到 9 的数字;
- [a-z]; 查找任何 小写a 到 小写z 之间的字符;
- [A-Z]; 查找任何 大写A 到 大写Z 之间的字符;
- (abc); 查找任何指定的选项,当做一个整体;
- |;或者的意思;必须用()包起来用;
元字符
- . ;查找除换行和结束字符之外的任意字符;
- \w;查找数字、字母及下划线;相当于[a-zA-Z0-9_];
- \W;查找非(数字、字母及下划线);相当于[^a-zA-Z0-9_];
- \d;查找数字;
- \D;查找非数字;
- \s;查找空白字符;
- \S;查找非空白字符;
- \b;匹配单词边界;
- \B;匹配非单词边界;
- 还有其他的...以后再说;
量词
- n+;匹配至少有一个n;
- n*;匹配任意个n;
- n?;匹配0个或者1个n;
- n{X};匹配X个n;一个字符串中的n的数量如果多于X个,那就只匹配到X个,后面的不管了;
- n{X,};匹配至少X个n;
- n{X,Y};匹配至少X个,最多Y个n;
- ^n;以n开头,一般写为/^n/;
- n$;以n结尾,一般写为/n$/;
- ?=n;匹配任何紧跟其后为n的字符串;如 /is(?= apple)/; 字符串 "This is apple!" 匹配成功,但是查找的是 is apple,匹配的是apple前面的 is;
- ?!n;匹配任何紧跟其后非n的字符串;如 /is(?!apple)/; 字符串"This is apple!"匹配成功,但是查找的是is !apple,匹配的是This的 is;
RegExp 对象方法
- RegExpObject.test(string); 检索字符串中指定的值,返回 true 或 false;
- RegExpObject.exec(string); 检索字符串中指定的值,以数组形式返回找到的值,并确定其位置;如果没找到返回null;
支持正则表达式的String对象的方法有:
- stringObject.search(RegExpObject); 检索与正则表达式匹配的字符串;如果匹配成功,返回该字符首字母下标;如果没找到,返回-1;
- stringObject.match(RegExpObject); 检索与正则表达式匹配的字符串;如果匹配成功,以数组形式返回字符;如果没找到,返回null;
- stringObject.replace(RegExpObject,newString); 检索与正则表达式匹配的字符串;如果匹配成功,则用newString替换字符,并且产生新字符串(不会改变原字符串);
- stringObject.split(RegExpObject,limit); 检索与正则表达式匹配的字符串;如果匹配成功,则用匹配的字符分割字符串,并且返回一个数组(原字符串不会改变);
javascript 正则表达式的简单操作的更多相关文章
- 理清JavaScript正则表达式--下篇
紧接:"理清JavaScript正则表达式--上篇". 正则在String类中的应用 类String支持四种利用正则表达式的方法.分别是search.replace.match和s ...
- JavaScript正则表达式下——相关方法
上篇博客JavaScript 正则表达式上——基本语法介绍了JavaScript正则表达式的语法,有了这些基本知识,可以看看正则表达式在JavaScript的应用了,在一切开始之前,看看RegExp实 ...
- JavaScript 正则表达式上——基本语法
定义 JavaScript种正则表达式有两种定义方式,定义一个匹配类似 <%XXX%> 的字符串 1. 构造函数 var reg=new RegExp('<%[^%>]+%&g ...
- javascript正则表达式简介
javascript正则表达式 javascript正则表达式 regular expression是一个描述字符模式的对象: ECMAScript中的RegExp类表示正则表达式: String ...
- 理清JavaScript正则表达式
理清JavaScript正则表达式--下篇 紧接:"理清JavaScript正则表达式--上篇". 正则在String类中的应用 类String支持四种利用正则表达式的方法.分别是 ...
- 第一百零五节,JavaScript正则表达式
JavaScript正则表达式 学习要点: 1.什么是正则表达式 2.创建正则表达式 3.获取控制 4.常用的正则 假设用户需要在HTML表单中填写姓名.地址.出生日期等.那么在将表单提交到服务器进一 ...
- JavaScript正则表达式学习笔记(二) - 打怪升级
本文接上篇,基础部分相对薄弱的同学请移步<JavaScript正则表达式学习笔记(一) - 理论基础>.上文介绍了8种JavaScript正则表达式的属性,本文还会追加介绍几种JavaSc ...
- javascript 正则表达式补充
定义 JavaScript种正则表达式有两种定义方式,定义一个匹配类似 <%XXX%> 的字符串 1. 构造函数 var reg=new RegExp('<%[^%>]+%&g ...
- JavaScript 正则表达式基础语法
前言 正则表达式在人们的印象中可能是一堆无法理解的字符,但就是这些符号却实现了字符串的高效操作.通常的情况是,问题本身并不复杂,但没有正则表达式就成了大问题.javascript中的正则表达式作为相当 ...
随机推荐
- 导入项目后,http://schemas.android.com/apk/res/android报错
1.复制出现红色字体的路径 2.File - Settings - Language & Frameworks - schemas and DtDs - 粘贴显红路径
- Sentinel控制台前端开发环境搭建
Sentinel:分布式系统的流量防卫兵. 官网:https://sentinelguard.io Github:https://github.com/alibaba/sentinel Wiki:ht ...
- redis json 降低性能 使用 hash
使用hashtable和hash-max-zipmap-entries内存优化和效率http://www.flyfifi.cn/blog/detail/71/
- JavaScript的深拷贝
javaScript的拷贝有浅拷贝和深拷贝.拷贝我们一般拷贝对象,获取对象的内容(字段.函数)都给复制一遍 浅拷贝:一般只是简单的赋值 //浅拷贝 var obj1={name:"cat&q ...
- MySql 里的IFNULL用法
IFNULL(expr1,expr2)的用法: 假如expr1 不为 NULL,则 IFNULL() 的返回值为 expr1; 否则其返回值为expr2.IFNULL()的返回值是数字或是字符串,具体 ...
- MySQL数据库之多线程备份工具mydumper
Mydumper介绍: 1)Mydumper是一个针对MySQL和Drizzle的高性能多线程备份和恢复工具 2)特性: 轻量级C语言编写 执行速度比mysqldump快10倍 快速的文件压缩 支持导 ...
- linux下无法启动webdriver问题
linux下无法启动webdriver问题: 查看是否有足够多的webdriver进程: ps -ef | grep chromedriver kill -9 `ps -ef |grepchromed ...
- 导航current背景
========================================简单一点的 var locationUrl = location.href.toLowerCase(); //导航cur ...
- 中检测到有潜在危险的 Request.Form 值
经常会出现从客户端(xxx)中检测到有潜在危险的 Request.Form 值. 这个问题我们只用在web.config中添加一句代码即可 <system.web> <pages v ...
- web系统整体优化
关于web系统整体优化提速总结 关于web系统整体优化提速总结 一.背景 随着公司业务的拓展,随之而来就是各种系统横向和纵向的增加,PV.UV也都随之增加,原有的系统架构和模式慢慢遇上了瓶颈,需要 ...