JS正则表达式 整合 (值得收藏)

2025-05-29 0 72

url的正则表达式:包括IP,域名(domain),ftp,二级域名,域名中的文件,域名加上端口!用户名等等信息

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20
function IsURL(str_url) {

var strRegex =

"^((https|http|ftp|rtsp|mms)?://)" +

"?(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?" + //ftp的user@

"(([0-9]{1,3}.){3}[0-9]{1,3}" + // IP形式的URL- 199.194.52.184

"|" + // 允许IP和DOMAIN(域名)

"([0-9a-z_!~*'()-]+.)*" + // 域名- www.

"([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]." + // 二级域名

"[a-z]{2,6})" + // first level domain- .com or .museum

"(:[0-9]{1,4})?" + // 端口- :80

"((/?)|" + // a slash isn't required if there is no file name

"(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$";

var re = new RegExp(strRegex);

//re.test()

if (re.test(str_url)) {

return true;

} else {

return false;

}

}

匹配手机号

?

1
var myreg = /^(13[0-9]{1}|14[5|7|9]{1}|15[0-3|5-9]{1}|166|17[0-3|5-8]{1}|18[0-9]{1}|19[8-9]{1}){1}\\d{8}$/;

用户名正则,4到16位(字母,数字,下划线,减号)

?

1

2

3

4

5

6

7

8
var uPattern = /^[a-zA-Z0-9_-]{4,16}$/;

//输出 true

console.log(uPattern.test("caibaojian"));

密码强度正则

//密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符

var pPattern = /^.*(?=.{6,})(?=.*\\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/;

//输出 true

console.log("=="+pPattern.test("caibaojian#"));

整数正则

?

1

2

3

4

5

6

7

8

9

10

11

12
//正整数正则

var posPattern = /^\\d+$/;

//负整数正则

var negPattern = /^-\\d+$/;

//整数正则

var intPattern = /^-?\\d+$/;

//输出 true

console.log(posPattern.test("42"));

//输出 true

console.log(negPattern.test("-42"));

//输出 true

console.log(intPattern.test("-42"));

数字正则

?

1

2

3

4

5

6

7

8

9

10

11
//可以是整数也可以是浮点数

//正数正则

var posPattern = /^\\d*\\.?\\d+$/;

//负数正则

var negPattern = /^-\\d*\\.?\\d+$/;

//数字正则

var numPattern = /^-?\\d*\\.?\\d+$/;

console.log(posPattern.test("42.2"));

console.log(negPattern.test("-42.2"));

console.log(numPattern.test("-42.2"));

Email正则

?

1

2

3

4
//Email正则

var ePattern = /^([A-Za-z0-9_\\-\\.])+\\@([A-Za-z0-9_\\-\\.])+\\.([A-Za-z]{2,4})$/;

//输出 true

console.log(ePattern.test(99154507@qq.com));

身份证号正则

?

1

2

3

4
//身份证号(18位)正则

var cP = /^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$/;

//输出 true

console.log(cP.test("11010519880605371X"));

URL正则

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14
//URL正则

var urlP= /^((https?|ftp|file):\\/\\/)?([\\da-z\\.-]+)\\.([a-z\\.]{2,6})([\\/\\w \\.-]*)*\\/?$/;

//输出 true

console.log(urlP.test(http://caibaojian.com));

IPv4地址正则

//ipv4地址正则

var ipP = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;

//输出 true

console.log(ipP.test("115.28.47.26"));

十六进制颜色正则

//RGB Hex颜色正则

var cPattern = /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/;

//输出 true

console.log(cPattern.test("#b8b8b8"));

日期正则

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14
//日期正则,简单判定,未做月份及日期的判定

var dP1 = /^\\d{4}(\\-)\\d{1,2}\\1\\d{1,2}$/;

//输出 true

console.log(dP1.test("2017-05-11"));

//输出 true

console.log(dP1.test("2017-15-11"));

//日期正则,复杂判定

var dP2 = /^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/;

//输出 true

console.log(dP2.test("2017-02-11"));

//输出 false

console.log(dP2.test("2017-15-11"));

//输出 false

console.log(dP2.test("2017-02-29"));

QQ号码正则

?

1

2

3

4
//QQ号正则,5至11位

var qqPattern = /^[1-9][0-9]{4,10}$/;

//输出 true

console.log(qqPattern.test("65974040"));

微信号正则

?

1

2

3

4
//微信号正则,6至20位,以字母开头,字母,数字,减号,下划线

var wxPattern = /^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/;

//输出 true

console.log(wxPattern.test("caibaojian_com"));

车牌号正则

?

1

2

3

4
//车牌号正则

var cPattern = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/;

//输出 true

console.log(cPattern.test("粤B39006"));

包含中文正则

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53
//包含中文正则

var cnPattern = /[\\u4E00-\\u9FA5]/;

//输出 true

console.log(cnPattern.test("董董董"));

整数或者小数:^[0-9]+\\.{0,1}[0-9]{0,2}$

只能输入数字:"^[0-9]*$"

只能输入n位的数字:"^\\d{n}$"

只能输入至少n位的数字:"^\\d{n,}$"

只能输入m~n位的数字:。"^\\d{m,n}$"

只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"

只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"

只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"

只能输入非零的正整数:"^\\+?[1-9][0-9]*$"

只能输入非零的负整数:"^\\-[1-9][]0-9"*$。

只能输入长度为3的字符:"^.{3}$"

只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"

只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"

只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"

只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"

只能输入由数字、26个英文字母或者下划线组成的字符串:"^\\w+$"

验证用户密码:"^[a-zA-Z]\\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。

验证是否含有^%&'',;=?$\\"等字符:"[^%&'',;=?$\\x22]+"。

只能输入汉字:"^[\\u4e00-\\u9fa5]{0,}$"

验证Email地址:"^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$"。

验证InternetURL:"^http://([\\w-]+\\.)+[\\w-]+(/[\\w-./?%&=]*)?$"。

验证电话号码:"^(\\(\\d{3,4}-)|\\d{3.4}-)?\\d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX- XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。

验证身份证号(15位或18位数字):"^\\d{15}|\\d{18}$"。

验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。

验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。整数或者小数:^[0-9]+\\.{0,1}[0-9]{0,2}$

只能输入数字:"^[0-9]*$"。

只能输入n位的数字:"^\\d{n}$"。

只能输入至少n位的数字:"^\\d{n,}$"。

只能输入m~n位的数字:。"^\\d{m,n}$"

只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。

只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。

只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。

只能输入非零的正整数:"^\\+?[1-9][0-9]*$"。

只能输入非零的负整数:"^\\-[1-9][]0-9"*$。

只能输入长度为3的字符:"^.{3}$"。

只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。

只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。

只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。

只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。

只能输入由数字、26个英文字母或者下划线组成的字符串:"^\\w+$"。

验证用户密码:"^[a-zA-Z]\\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。

验证是否含有^%&'',;=?$\\"等字符:"[^%&'',;=?$\\x22]+"。

只能输入汉字:"^[\\u4e00-\\u9fa5]{0,}$"

验证Email地址:"^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$"。

验证InternetURL:"^http://([\\w-]+\\.)+[\\w-]+(/[\\w-./?%&=]*)?$"。

验证电话号码:"^(\\(\\d{3,4}-)|\\d{3.4}-)?\\d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX- XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。

验证身份证号(15位或18位数字):"^\\d{15}|\\d{18}$"。

验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。

验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。

总结

以上所述是小编给大家介绍的JS正则表达式 整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对快网idc网站的支持!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 JS正则表达式 整合 (值得收藏) https://www.kuaiidc.com/88672.html

相关文章

发表评论
暂无评论