JS正则表达式:常用正则手册/RegExp/正则积累_js手机号正则
时间: 2024-10-19 12:50:26
(部分内容来自网络,其真实性存疑,为了避免对您造成误导,请谨慎甄别。)
在JavaScript中,正则表达式(RegExp)是一种用于匹配字符串中字符组合的强大工具。这里是一些常用的正则表达式以及特定于 JavaScript 手机号匹配的正则表达式的示例。
1. 常用正则表达式
以下是一些常用的正则表达式手册,常见用途和对应的正则表达式:
1.1. 匹配邮箱
javascriptconst emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
// 示例
console.log(emailRegex.test("test@example.com")); // true
1.2. 匹配URL
javascriptconst urlRegex = /^(https?|ftp):\/\/[^\s/$.?#].[^\s]*$/;
console.log(urlRegex.test("http://www.example.com")); // true
1.3. 匹配数字
javascriptconst numberRegex = /^[0-9]+$/;
// 示例
console.log(numberRegex.test("123456")); // true
console.log(numberRegex.test("123a")); // false
1.4. 匹配日期(YYYY-MM-DD格式)
javascriptconst dateRegex = /^\d{4}-\d{2}-\d{2}$/;
// 示例
console.log(dateRegex.test("2023-10-01")); // true
2. JS 手机号正则表达式
根据中国的手机号规则,手机号一般为11位数字,且以特定的数字开头(如 13、14、15、16、17、18 和 19 开头)。以下是一个常用的手机号正则表达式:
javascriptconst phoneRegex = /^(1[3-9]\d{9})$/;
// 示例
console.log(phoneRegex.test("13812345678")); // true
console.log(phoneRegex.test("19812345678")); // true
console.log(phoneRegex.test("12345678901")); // false
3. 正则表达式的一些基本概念
- ^
: 匹配输入字符串的开始。
- \d
: 匹配数字,等同于 [0-9]
。
- \w
: 匹配字母、数字或下划线,等同于 [a-zA-Z0-9_]
。
- $
: 匹配输入字符串的结束。
- *
: 匹配前面的子表达式零次或多次。
- +
: 匹配前面的子表达式一次或多次。
- ?
: 匹配前面的子表达式零次或一次。
4. 其它常见的正则表达式示例
4.1. 匹配汉字
javascriptconst chineseRegex = /^[\u4e00-\u9fa5]+$/;
// 示例
console.log(chineseRegex.test("你好")); // true
4.2. 检查密码复杂性(至少一个数字和一个大写字母,长度为8-20位)
javascriptconst passwordRegex = /^(?=.*[A-Z])(?=.*\d)[A-Za-z\d]{8,20}$/;
// 示例
console.log(passwordRegex.test("A12345678")); // true
console.log(passwordRegex.test("abcdefgh")); // false
总结
正则表达式是一种强大的工具,可以用于各种字符串匹配和验证。在JavaScript中,利用 RegExp
对象,你可以创建复杂的匹配规则。希望以上的示例能帮助你理解和使用正则表达式。