二,正则表达式
1,什么是正则表达式
是一种规范,对字符串格式进行验证的规范
不用自己写,常用的正则表达式,网上都有,只要会使用就可以 2,定义方法
字面量 var reg = /正则表达式/ 常用方法
构造函数 var reg = new RegExp('正则表达式') 3,正则方法
正则表达式.test(字符串) 验证字符串是否符合规范 4,基本语法
元字符: 小写的表示 只要有其中一个出现就可,大写表只要出现它没有的即只要取非就可
\d 数字
\D 非数字 \w 数字,字母,下划线
\W 非 数字,字母,下划线 \s 空格
\S 非空格 . 非换行 边界符
^ 开始
$ 结束 限定符
* 0 --- 正无穷
+ 1 --- 正无穷
? 0 --- 1
{n} 只能是n个
{n,} 至少是n个
{n,m} n至m个 特殊符号
\ 解析元字符和转义符
| 逻辑或
() 作为整体执行
[] 只要是其中一个数值,就符合
a-b a至b范围之内的
[^] 对内容取反 写在表达式之外的
/正则/i 不区分大小写
/正则/g 全局匹配 5,和正则表达式相关联的函数
search()
默认区分大小写,使用正则,不区分大小写
不区分大小写 变量.search(/正则/i) match()
默认只捕获第一个符合的内容,正则表达式捕获所有符合的内容
全局匹配 变量.match(/正则/g) replace()
默认只替换第一个符合的内容,正则表达式替换所有符合的内容
全局匹配 变量.replace( /正则/g , 要替换写入的内容)

一.正则表达式
什么是正则表达式

对字符串内容,进行格式和内容的验证

对于正则表达式,我们不用自己去写,所有常用的正则表达式,在网上都可以搜到

我们只需要能看懂,会使用

所有的计算机语言,正则表达式,都是相同的,通用

正则表达式的基本语法

1,字面量(常用)
使用 // 来包裹表达式内容
var 变量 = /正则表达式/

2,构造函数
var 变量 = RegExt(‘正则表达式’);

正则表达式的使用方法

1,验证
判断字符串内容是否符合正则表达式的规范
执行结果是 布尔类型
语法 : 正则表达式.test(‘字符串内容’);

2,捕获
捕获获取字符串中符合正则表达式规范的内容
执行结果是捕获获取到的符合规范的字符串内容
语法 : 正则表达式.exec(‘字符串内容’)

二.正则表达式之常用语法规范

正则表达式,常用语法规范

正则表达式中,不要随便写空格,因为空格也会作为验证格式的一部分

1,元字符
使用一些符号,来表示规范 \d 表示数值,数字,只要有数字即可,不用都是数字
\D 表示非数字,只要有不是数字的就可,不用都是非数字 \w 表示数字,字母,下划线,只要有其中一个就可
\W 表示非数字,字母,下划线,只要有不是字母或数字下划线就可 \s 表示空格,只要有空格就可
\S 表示非空格 只要有不是空格的就可 . 表示非换行
字符串中的换行,使用 转义符 \n 表示 提示 正则表达式和转义符,都是 \内容的形式
JavaScript会自动识别,如果是 \内容 符合正则表达式,就按照正则表达式来执行
符合转义符,就按照转义符的形式执行
正则表达式和转义符不会冲突 // 只要有数字即可,不用都是数字
var reg1 = /\d/ ; console.log(reg1.test('123456')) ; → true
console.log(reg1.test('abcd')) ; → false
console.log(reg1.test('1234abcd')) ; → true var reg2 = /\D/; console.log(reg2.test('123456')) ; → false
console.log(reg2.test('abcd')) ; → true
console.log(reg2.test('1234abcd')) ; → true
console.log(reg2.test('!@#$%^')) ; → true var reg3 = /\w/; console.log( reg3.test('123avbc_') ); → true
console.log( reg3.test('!@#$%^') ); → false
console.log( reg3.test('1234!@#$%^') ); → true var reg4 = /\W/; console.log( reg4.test('123avbc_') ); → false
console.log( reg4.test('!@#$%^') ); → true
console.log( reg4.test('1234!@#$%^') ); → true var reg5 = /\s/;
console.log( reg5.test(' ') ); → true
console.log( reg5.test('312斤kfjisa') ); → false
console.log( reg5.test('312斤 kfjisa') ); → true var reg6 = /\S/;
console.log( reg6.test(' ') ); → false
console.log( reg6.test('312斤kfjisa') ); → true
console.log( reg6.test('312斤 kfjisa') ); → true var reg7 = /./; console.log( reg7.test('\n') ); → false

————————————————
版权声明:本文为CSDN博主「咩有猫腻.」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:JS-正则表达式(基本语法、test、exec、\d\D\w\W\s\S .)

JS-正则表达式(基本语法、test、exec、\d\D\w\W\s\S .)的更多相关文章

  1. JS 正则表达式基本语法(精粹)

    1.正则表达式基本语法 两个特殊的符号'^'和'$'.他们的作用是分别指出一个字符串的开始和结束. 例子如下: "^The":表示所有以"The"开始的字符串( ...

  2. js正则表达式基本语法

    正则表达式基本语法 两个特殊的符号'^'和'$'.他们的作用是分别指出一个字符串的开始和结束. 例子如下: "^The":表示所有以"The"开始的字符串(&q ...

  3. js正则表达式test方法、exec方法与字符串search方法区别

    1.正则表达式test方法 test() 方法用于检测一个字符串是否匹配某个模式 返回值: 如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 fal ...

  4. js正则表达式replace里有变量的解决方法用到RegExp类

    一直比较害怕使用正则表达式,貌似很深奥很复杂的样子,所以在用js操作字符串的时候,我最多使用的是replace.split.substring.indexOf等函数,这些函数有时候需要多次叠加使用,但 ...

  5. JS正则表达式常用总结

    正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...

  6. JS 正则表达式用法

    JS 正则表达式用法简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下: 测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或 ...

  7. js 常用js正则表达式大全

    一.校验数字的js正则表达式   1 数字:^[0-9]*$     2 n位的数字:^d{n}$     3 至少n位的数字:^d{n,}$     4 m-n位的数字:^d{m,n}$     5 ...

  8. js正则表达式语法

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

  9. [转载]js正则表达式语法

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

  10. js正则表达式语法[转]

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

随机推荐

  1. Java跳出当前的多重嵌套循环的3种解决方法

    Java跳出当前的多重嵌套循环的3种解决方法(以双重嵌套为例) 方法一:使用一个布尔型的标记变量flag 1 public static void method1() { 2 boolean flag ...

  2. Nginx 反向代理 (泛域名->泛域名,https,静态文件)

    Nginx 反向代理配置指南 (泛域名 -> 泛域名, HTTPS, 静态文件) 完整版 server { # 监听80端口 listen 80; listen 443 ssl http2;; ...

  3. 关于C++当中的指针悬空问题

    一.哪里遇到了这个问题 在进行MNN机器学习框架的MFC应用开发的时候遇到了这个问题,在窗口控件代码段 "MNN_Inference_BarCode_MFCDlg.cpp" 当中需 ...

  4. PC大屏自适应

    通常来说PC端的页面并不像移动端页面那样对屏幕大小和分别率有那么强的依赖.一般的页面都是取屏幕中间的一块宽度(1280px), 两边留白, 高度随着内容的长度滚动.这样无论窗口怎么变化,页面都是可用的 ...

  5. 8.Kubernetes核心技术Pod

    Kubernetes核心技术Pod Pod概述 Pod是K8S系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在K8S上运行容器化应用的资源对象,其它的资源对象 ...

  6. KTL (0.9.2,通达信mdt文件)

    K,K线,Candle蜡烛图. T,技术分析,工具平台 L,公式Language语言使用c++14,Lite小巧简易. 项目仓库:https://github.com/bbqz007/KTL 国内仓库 ...

  7. C# Modbus 之 EasyModbus

    直接上代码 public int EasyModbusReadInputRegisters() { ModbusClient modbusClient = new ModbusClient(_spHe ...

  8. docker实现redis集群

    1.主从模式(Master-Slave) 1.1主从复制原理 主从复制是redis的一种基本的集群方式,它通过将一个Redis节点(主节点)的数据复制到一个或多个其他Redis节点来实现数据的冗余和备 ...

  9. CSS3实现放大镜效果

    市面上基本上所有的购物平台.商城上的商品详情页,对于商品的图片都是有放大功能.那么这个功能主要是怎么实现的呢?CSS3实现放大镜效果主要依赖于CSS的一些高级特性,如transform.transit ...

  10. zynq 按照传统的Linux开发模式制作系统

    参考资料 xilinx wiki: https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/460653138/Xilinx+Open+Source ...