在js中创建正则表达式对象
1)直接量语法
var regExp = /正则表达式/标记
var regExp = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/gi
2)使用内置类regExp(了解)
var regExp = new RegExp('正则表达式','标记')
注意:
-
标记是可选项:有以下值
g:全局(global)
i:忽略大小写(ignorecase)
gi:全局扫描,忽略大小写
方法
var regExp = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/gi;
var ok = regExp.test('用户输入的字符串');//返回的是一个布尔值。返回值为true则表示匹配成功
用法
邮箱地址: <input type="text" id="email"/>
<button value="验证邮箱地址" onclick="checkEmail()"></button>
<script>
function checkEmail(){
var email = document.querySelector('#email');
var regExp = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/gi;
var ok = regExp.test(email);
if(ok){
alert('邮箱地址正确');
}else{
alert('邮箱地址不正确');
}
};
</script>
常见的正则表达式符号
| 符号 | 作用 |
|---|---|
| . | 匹配除换行符以外的任意字符 |
| \w | 匹配字母或数字或下划线或汉字 |
| \s | 匹配任意的空白符 |
| \d | 匹配数字 |
| \b | 匹配单词的结束或开始 |
| ^ | 匹配字符串的开始 |
| $ | 匹配字符串的结束 |
| * | 重复0次或更多次(0-n次) |
| + | 重复一次或更多次(1-n次) |
| ? | 重复0次或一次(0或1次) |
| {n} | 重复n次 |
| {n,} | 重复n次或更多次(n+次) |
| {n,m} | 重复n到m次 |
| 数量永远匹配的都是前面那个字符出现的次数 | |
| \W | 匹配任意不是字母、数字、下划线、汉字的字符 |
| \S | 匹配任意不是空白符的字符 |
| \D | 匹配任意非数字的字符 |
| \B | 匹配不是单词开头或结束的位置 |
| [^x] | 匹配除了x以外的任意字符 |
| [^aei] | 匹配出了aei这几个字母以外的任意字符 |
| | | 表示或者 |
[1-9]表示1-9之间任意一个数字
[1-9]{2}表示1-9之间出现两个任意数字
[1-9]{2,}表示1-9之间出现2个或以上任意数字
本文介绍了在JavaScript中创建正则表达式的两种方法:直接量语法和使用RegExp类,并探讨了常用的正则表达式符号及其用法,如全局搜索、忽略大小写等。此外,还提到了一些基础的正则表达式模式,如匹配特定数量的数字。

1084

被折叠的 条评论
为什么被折叠?



