博客
关于我
Jquery中的正则表达式
阅读量:645 次
发布时间:2019-03-15

本文共 1361 字,大约阅读时间需要 4 分钟。

正则表达式常用字符与示例

1. 正则表达式基础

正则表达式是一种强大的字符串匹配工具,用于描述特定字符序列。常见的字符包括特殊符号、字符范围和量词等。以下是一些常用字符及其作用:

  • 特殊字符
    • \:用来标记特殊字符或向后引用。
    • ^:匹配字符串的开头位置。 Setmultiline属性开启时,^也能匹配换行或回车后的位置。
    • $:匹配字符串的末尾位置。 Setmultiline属性开启时,$也能匹配换行或回车前的位置。
    • *:匹配前面的子表达式零次或多次。例如,zo*可匹配“z”及“zoo”。
    • +:匹配前面的子表达式一次或多次。例如,zo+可匹配“zo”及“zoo”,但不匹配“z”。
    • ?:匹配前面的子表达式零次或一次。例如,ab?可匹配“ab”或“a”。
    • {n}:表示确定次数。例如,o{2}匹配恰好两个“o”。
    • {n,m}:表示最少n次,最多m次。例如,o{1,3}匹配1-3个“o”。
    • [abc]:匹配集合中的任意一个字符。例如,[abc]可匹配“a”、“b”或“c”。
    • [^abc]:匹配不在集合中的任意字符。例如,[^abc]可匹配”p”、”d”等。

2. 常用字符示例

字符 描述
\d 匹配一个数字字符,等价于[0-9]
\D 匹配一个非数字字符,等价于[^0-9]
\w 匹配包括下划线的任意单词字符,等价于[A-Za-z0-9_]
\W 匹配任一非单词字符,等价于[^A-Za-z0-9_]
\s 匹配任意 whitespace(空格、制表符等)。
\S 匹配任何非 whitespace字符。

3. 常用正则表达式示例

事项 正则表达式
用户名 /^[a-z0-9_-]{3,16}$/
密码 /^[a-z0-9_-]{6,18}$/
十六进制值 /^#?([a-f0-9]{6}\|[a-f0-9]{3})$/
电子邮箱 `/^([a-z0-9_.-]+)@([\da-z.-]+).([a-z.]{2,6})$/'
URL /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/
IP 地址 /(?!...\d{2,}/
HTML 标签 /^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>\|\s+\/>)$/
删除代码注释 /(?<!http:\|\S)//.*$/
Unicode编码中的汉字范围 /^[\u2E80-\u9FFF]+$/

4. 使用方法

在实际应用中,可以通过test()方法进行字符串匹配验证。具体格式为:

/相关正则表达式/

将表达式放置于斜杠/both sides/中,并通过test()方法进行验证。例如:

const regex = /^hello/g;console.log(regex.test('hello world')); // 返回trueconsole.log(regex.test('world hell'));// 返回false

要注意以下几点:1.脚 ").适用范围 2. 多个特殊字符需要使用\/转义。3. 向后引用时需使用\\,避免与前置转义混淆。

通过合理搭配以上字符和表达式,您可以构建出更精确的匹配规则。

转载地址:http://rmwmz.baihongyu.com/

你可能感兴趣的文章
Effective Java 读书笔记
查看>>
SpringBoot使用@Email报错误
查看>>
Rabbitmq的内存磁盘监控
查看>>
访问servlet时弹出文件下载框解决方法
查看>>
IDEA-@Slf4j和log标签&@Data(Lombok)无效
查看>>
SpringCloud-Eureka报错 Error creating bean with name解决
查看>>
Thymeleaf 生成下标,索引,使用Stat变量
查看>>
全局变量初始化顺序的不确定性引发的bug
查看>>
ValueError: Unexpected end of file.
查看>>
六、登录(二)
查看>>
初始微服务---Springcloud发展【第一期】
查看>>
RAFT 拜占庭将军 共识算法
查看>>
UE4 错误列表 error码(只记录我遇到的情况,持续添加,未完成)
查看>>
cmd编译.java文件 : java:720: 错误: 编码GBK的不可映射字符 Why ? ? ? ?
查看>>
【Jquery】获取当前窗口的宽度值/高度值
查看>>
Android 架构组件 – 让天下没有难做的 App
查看>>
能解决数据可视化大屏需求的3款可视化工具
查看>>
欢迎来到小迪博客
查看>>
【Altium Designer21】工作栏中文解析
查看>>
[87]用secureCRT连接虚拟机中的Ubuntu系统,出现“远程主机拒绝连接”错误
查看>>