正则表达式

*正则表达式

作用: 验证某一串字符串数据的格式。

正则表达式定义

  1. /pattern/attributes

  2. new RegExp(pattern, attributes);

匹配模式[attributes]

i 执行对大小写不敏感的匹配。

g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

m 执行多行匹配。

正则表达式通配符

*【方括号】

方括号用于查找某个范围内的字符:

[abc] 查找方括号之间的任何字符。

[^abc] 查找任何不在方括号之间的字符。

[0-9] 查找任何从 0 至 9 的数字。

[a-z] 查找任何从小写 a 到小写 z 的字符。

[A-Z] 查找任何从大写 A 到大写 Z 的字符。

[A-z] 查找任何从大写 A 到小写 z 的字符。

[adgk] 查找给定集合内的任何字符。

[^adgk] 查找给定集合外的任何字符。

(red|blue|green) 查找任何指定的选项。

*【元字符】

元字符(Metacharacter)是拥有特殊含义的字符:

. 查找单个字符,除了换行和行结束符。

\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 的字符串。

1.String验证正则

String支持正则的方法:

search 检索与正则表达式相匹配的值。 1 4

match 找到一个或多个正则表达式的匹配。 1 4

replace 替换与正则表达式匹配的子串。 1 4

split 把字符串分割为字符串数组。

例如:

//1.定义电话号码的正则表达式

let reg = /^1[3456789]\d{9}$/m;

//2.input输入控件value的值是否与正则表达式reg匹配

if(phone.value.match(reg) == null){

msg.innerHTML = "电话号码格式错误!";

msg.style.color = "red";

//在此聚焦在输入框

phone.focus();

}

2.RegExp对象

exec 检索字符串中指定的值。返回找到的值,并确定其位置。 1 4

test 检索字符串中指定的值。返回 true 或 false。

例如:

phone.onblur = function(){

//1.定义正则表达式

var reg = new RegExp(/^1[3456789]\d{9}$/,"m");

if(!reg.test(phone.value)){

msg.innerHTML = "电话号码格式错误!";

msg.style.color = "red";

//在此聚焦在输入框

phone.focus();

}

}

相关推荐
Chris·Bosh14 小时前
QT:控件属性及常用控件(3)-----输入类控件(正则表达式)
qt·正则表达式·命令模式
請叫我菜鳥18 小时前
PHP常见正则表达式
开发语言·正则表达式·php
장숙혜21 小时前
JavaScript正则表达式解析:模式、方法与实战案例
开发语言·javascript·正则表达式
蹦蹦跳跳真可爱5892 天前
Python----Python高级(正则表达式:语法规则,re库)
python·正则表达式
vortex52 天前
正则表达式基础与应用
正则表达式·php
小安同学iter3 天前
Web开发 -前端部分-HTML5新特性
javascript·css·正则表达式·json·css3·html5
小安同学iter3 天前
Web开发 -前端部分-CSS-2
前端·javascript·css·正则表达式·css3·html5
jackispy3 天前
JS宏进阶:正则表达式的使用
正则表达式
jackispy4 天前
JS宏进阶:正则表达式介绍
正则表达式
大熊猫侯佩5 天前
Swift 趣味开发:查找拼音首字母全部相同的 4 字成语(下)
开发语言·正则表达式·字符串·swift·string·成语·文本解析