JavaScript之正则
来源:互联网 发布:java 跨域访问 request 编辑:程序博客网 时间:2024/05/08 23:44
- 声明正则
- new RegExp
- 字面量
- test检测验证内容
- 正则内部类
- 预定义类
- 除了换行和回车之外的任意字符
- d 数字字符相当于0-9
- D非数字字符相当于0-9
- s 空白字符
- S非空白字符相当于 tnx0Bfr
- s 单词字符相当于a-zA-Z_0-9
- W 非单词字符相当于a-zA-Z_0-9
- 简单类
- 负向类
- 组合类
- 正则边界
- 量词
- 重复0次或多次
- 重复1次或更多次
- 重复0次或1次
- n m 重复次数n x m
- 或0-9a-z要么数字要么字母
- 优先级
- replace 替换
- 用正则去除首尾空格
- 预定义类
- 正则案例
- 验证邮箱
声明正则
new RegExp()
var reg = new RegExp(/表达式/) ;
字面量
var reg = /表达式/ ;
test()检测验证内容
//被检测内容必须完整包含abcvar reg = /abc/ ; var bl = reg.test("ab") ;var bl1 = reg.test("abc") ;var bl2 = reg.test("abcd") ;var bl3 = reg.test("abrc") ;console.log( bl ) ; //falseconsole.log( bl1 ) ; //true console.log( bl2 ) ; //trueconsole.log( bl3 ) ; //false
正则内部类
预定义类
. 除了换行和回车之外的任意字符
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>regExp</title></head><body><textarea id="ipt" cols="30" rows="10"></textarea><script> var ipt = document.getElementById('ipt') ; ipt.onblur = function(){ //匹配除了回车和换行的任意字符,一定要有一个字符 console.log( /^.+$/.test(this.value) ) ; } ;</script></body></html>
\d 数字字符(相当于[0-9])
ipt.onblur = function(){ //匹配,以数字开头结尾,并且数字至少有一个 console.log( /^\d+$/.test(this.value) ) ;} ;
\D非数字字符(相当于[^0-9])
\s 空白字符
ipt.onblur = function(){ //匹配,以空白字符开头且以空白字符结尾,空白字符可以重复0次到无限次 //数字必须要有一个 console.log( /^\s{0,}\d{1,}\s{0,}$/.test(this.value) ) ;} ;
\S非空白字符(相当于[^ \t\n\x0B\f\r])
\s 单词字符(相当于[a-zA-Z_0-9])
\W 非单词字符(相当于[^a-zA-Z_0-9])
简单类
//
//包含abc,只能多不能少,abc不能拆开/abc/.test('abcde');
[]
//只要包含abc中任意一个就满足/[abc]/.test('abcde'); //true/[abc]/.test('a'); //true/[abc]/.test('pppabcdd'); //true
负向类
- ^只有在[]里才表示非,在[]外面表示已某某开头
ipt.onblur = function(){ //匹配,不能以0到9的数字开头或结尾,并且重复1到多次,字符的中间也不能有0到9 console.log( /^[^0-9]{1,}$/.test(this.value) ) ;} ;
组合类
[0-9a-zA-Z]
正则边界
//^:以某某开头 $以某某结尾//必须要以数字开头并且以数字结尾/^[0-9]$/.test('string');
量词
* 重复0次或多次
ipt.onblur = function(){ //匹配,数字重复0次或更多次都正确,不输入也正确 console.log( /[0-9]*/.test(this.value) ) ; } ;
+ 重复1次或更多次
?重复0次或1次
{ n , m } 重复次数n<= x <=m
| 或,(([0-9]+)|([a-z]{+}))要么数字要么字母
优先级
量词 < | < ^$ < ()
replace() 替换
用正则去除首尾空格
function trim(str) { return str.replace(/(^\s+)|(\s+$)/g,""); // 去掉前面和后面的空格}
正则案例
验证邮箱
//[0-9a-zA-Z_.-]+ 至少重复一次0-9a-zA-Z_.-//[@] ///[0-9a-zA-Z_.-]+[@][0-9a-zA-Z]+([.][a-zA-Z]){1,2}/
0 0
- javascript之正则表达式
- javascript之正则表达式
- javascript之正则表达式
- JavaScript之正则表达式
- javascript之正则表达式
- JAVAscript之正则表达式
- javascript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- javascript之正则表达式
- javascript之正则表达式
- javaScript之正则
- JavaScript之正则
- JavaScript之正则表达式
- 使用超微主板的那些坑
- Leetcode题解
- 什么是嵌入式软件开发?
- rabbitMQ初步学习
- Git 在AndroidStudio中的使用
- JavaScript之正则
- [Leetcode] 87. Scramble String 解题报告
- 【JavaScript】js中对于JSON的处理
- LSTM入门
- java虚拟机中的软引用
- tcp_tw_recycle参数引发的系统问题
- 文章标题
- Banner(Viewpager+小圆点的简单化)
- HTML5知识点收集