JS中正则表达式常用语法总结
目录
- 一、正则表达式的创建
- 二、()、[]、{} 的区别
- 三、^ 和 $
- 四、\d \s \w .
- 五、* + ?
- 六、test 、match
- 七、支持正则表达式的 String 对象的方法
一、正则表达式的创建
JS正则的创建有两种方式: new RegExp() 和 直接字面量。
- 使用RegExp对象创建
var regObj = new RegExp("(^\s+)|(\s+$)","g");
- 使用直接字面量创建
var regStr = /(^\s+)|(\s+$)/g;
其中 g 表示全文匹配,与之相关的还有 i 和 m,i 表示匹配时忽略大小写,m 表示多行匹配,如果多个条件同时使用时,则写成:gmi
二、()、[]、{} 的区别
修饰符 | 描述 | 举例 |
---|---|---|
() | 作用是提取匹配的字符串。表达式中有几个()就会得到几个相应的匹配字符串。 | 比如 (\s+) 表示连续空格的字符串 |
[ ] | 定义匹配的字符范围。 | 比如 [a-zA-Z0-9] 表示字符文本要匹配英文字符和数字。 |
{} | 一般用来表示匹配的长度。 | 比如 \d{3} 表示匹配三个空格,\d[1,3]表示匹配1~3个空格。 |
三、^ 和 $
修饰符 | 描述 | 举例 |
---|---|---|
^ | 匹配一个字符串的开头 | 比如 (^a) 就是匹配以字母a开头的字符串 |
$ | 匹配一个字符串的结尾 | 比如 (b$) 就是匹配以字母b结尾的字符串 |
^ 还有另个一个作用就是取反,比如[^xyz] 表示匹配的字符串不包含xyz
需要注意的是:如果
^
出现在[]
中一般表示取反,而出现在其他地方则是匹配字符串的开头
四、\d \s \w .
修饰符 | 描述 |
---|---|
\d | 匹配一个非负整数, 等价于 [0-9] |
\s | 匹配一个空白字符 |
\w | 匹配一个英文字母或数字,等价于[0-9a-zA-Z] |
. | 匹配除换行符以外的任意字符,等价于[^\n] |
五、* + ?
修饰符 | 描述 | 举例 |
---|---|---|
*
|
表示匹配前面元素0次或多次 | 比如 (\s*) 就是匹配0个或多个空格 |
+
|
表示匹配前面元素1次或多次 | 比如 (\d+) 就是匹配由至少1个整数组成的字符串 |
?
|
表示匹配前面元素0次或1次 | 相当于{0,1} 比如(\w?) 就是匹配最多由1个字母或数字组成的字符串 |
六、test 、match
前面的大都是JS正则表达式的语法,而test则是用来检测字符串是否匹配某一个正则表达式,如果匹配就会返回true,反之则返回false
/\d+/.test("123") ; //true/\d+/.test("abc") ; //false
match是获取正则匹配到的结果,以数组的形式返回
"186a619b28".match(/\d+/g); // ["186","619","28"]
七、支持正则表达式的 String 对象的方法
方法 | 描述 |
---|---|
search | 检索与正则表达式相匹配的值。 |
match | 找到一个或多个正则表达式的匹配。 |
replace | 替换与正则表达式匹配的子串。 |
split | 把字符串分割为字符串数组。 |
更多详细内容可查看 官方文档
以上就是关于正则表达式的常用语法了,觉得不错欢迎收藏哦~
JS中正则表达式常用语法总结相关推荐
- 正则表达式常用语法解析
正则表达式常用语法解析 什么是正则表达式 正则表达式之元字符 匹配位置的元字符 ^.$./b 匹配字符的元字符 ..\w.\W.\s.\S.\d.\D 正则表达式之文字匹配 字符类 字符转义 反义 正 ...
- 站长在线Python精讲:Python中正则表达式的语法详解
欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<Python中正则表达式的语法详解>.本知识点主要内容有9点:行定位符.元字符.限定符.字符集.排除字符.选择字符.转义字符 ...
- js中数组常用的方法总结,包括ES6
原文地址:js中数组常用的方法总结,包括ES6 1.push() 后增 push()方法可以向数组后添加一个新的元素,并返回新数组的长度. 末尾添加,返回长度,改变原数组 var a = [1,2,3 ...
- php中正则表达式基本语法
php中正则表达式基本语法 ps:本人亲测,阿里云2核4G5M的服务器性价比很高,新用户一块多一天,老用户三块多一天,最高可以买三年,感兴趣的可以戳一下:阿里云折扣服务器 1.界定符:表达一个正则表达 ...
- js中一些常用的基本函数
如何使用jquery刷新当前页面 下面介绍全页面刷新方法:有时候可能会用到 window.location.reload()刷新当前页面. parent.location.reload()刷新父亲对象 ...
- 网站开发中JS中的常用语句
1.document.write( " "); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document- >html- >(head,body ...
- JS中哪些常用事件可以冒泡
总结JS中的一些常用事件是否可以冒泡. 事件 是否可以冒泡 click √ dbclick √ keydown √ keyup √ mousedown √ mousemove √ mouseout √ ...
- Node.js中的常用工具类util
util是一个Node.js核心模块,提供常用函数的集合,用于弥补JavaScript的功能的不足,util模块设计的主要目的是为了满足Node内部API的需求.其中包括:格式化字符串.对象的序列化. ...
- 正则表达式常用语法速查+一个简单使用案例
文章目录 一.常用元字符(注意区分大小写,大写是相反的意思) 二.重复量词与贪婪非贪婪模式 三.自定义字符集合与字符边界问题 自定义字符集合 字符边界问题(匹配的不是字符而是位置,符合某种条件的位置) ...
最新文章
- SystemCenter2012SP1实践(6)SCVMM管理XenServer
- android自定义WaveView水波纹控件
- 差异分析定位Ring 3保护模块
- careercup-树与图 4.9
- 【收藏】Anaconda详细安装使用教程
- 性能测试之性能测试的基础理论
- onvif_discover虚拟摄像头
- C#模拟MSN窗体抖动[原创]
- 播客#50:Sacha Greif
- 【原】通过npm script运行webpack的原理
- “我明明是一个老师,病毒却把我逼成了主播……”
- Linux下使用SSH连接远端服务器技术总结
- Binary XML file line #17vector tag requires viewportWidth 0
- Android进阶--android自动化测试python+uiautomator
- 服务器系列和酷睿系列,至强cpu与酷睿两个系列之间有什么区别?
- 安装office 错误代码:30068-39
- Java之美[从菜鸟到高手演变]之Java学习方法
- Django中的Model(操作表) - 第五轻柔的code - 博客园
- [CV]光场和它的各种
- 【project】Adruino小型自平衡机器人EVA(+硬件+源代码+3D文件)
热门文章
- 优秀成绩标记—— 小王是班级干部,对于即将到来的三好学生评选,负责统计平均成绩超过85分的同学
- java 修改图片名_Java修改文件夹下图片的名称
- 降成本利器——SRM之电子招投标
- 基于java(ssm)留学生交流互动论坛系统源码(java毕业设计)
- 深度学习FPGA实现基础知识17(图像处理卷积运算 矩阵卷积)
- 多线程使用场景(经典必看)
- jquery.webcam.js实现调用摄像头拍照兼容各个浏览器
- COLA开发流程总结
- 物联网的七大通信协议
- 超详细Seaborn绘图 ——(一)barplot