当前位置:   article > 正文

Java正则表达式汇总_java正则表达式,不能输入引号(单引号和双引号)以及特殊字符<、>、#和&

java正则表达式,不能输入引号(单引号和双引号)以及特殊字符<、>、#和&

1.不可包含特殊字符的正则表达式

/^((?!\\|\/|:|\*|\?|<|>|\||'|%|\@|\#|\$|\%|\^|\&|\(|\)|\[|\]|\{|\}|\.|\!|\¥|\+|\=|"|”|“).){1,50}$/

注: /^表示开头,$/表示结尾,中间的\表示转义,|表示或(起连接作用),(1,50)表示长度范围为1~50

2.字符串不可包含空格(开头结尾不得为空格)

  1. /^\S*$/ //不可包含任何空格
  2. /^\S([\s\S]*\S)?$/ //头尾不可包含空格

3.IP地址校验

  1. /^([1-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])$/
  2. // 可输入多个,以逗号分隔,校验重复
  3. public ipValidate(): ValidatorFn {
  4. return (control: AbstractControl): { [key: string]: any } => {
  5. let val = control.value;
  6. var valchange = /^(?:(?:^|,)(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(?:\.(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}){0,10}$/;
  7. if(val.length == 0){
  8. return {}
  9. }
  10. if (!valchange.test(val)) {
  11. return {
  12. pattern: true
  13. };
  14. }
  15. var vals = val.split(',');
  16. var set=new Set();
  17. for(var i=0;i<vals.length;i++)
  18. {
  19. set.add(vals[i]);
  20. }
  21. if(set.size<vals.length)
  22. {
  23. return {
  24. repeat: true
  25. };
  26. }
  27. return {};
  28. };
  29. }

4.MAC地址校验

  1. /^([A-Fa-f0-9]{2}:){5}[A-Fa-f0-9]{2}$/)
  2. //可输入多个,以逗号分隔
  3. //MAC地址校验
  4. public macValidate(): ValidatorFn {
  5. return (control: AbstractControl): { [key: string]: any } => {
  6. let val = control.value;
  7. var valchange = /^([0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2})(,[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2})*$/;
  8. var valchange1 = /^([0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2})(,[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2})*$/;
  9. var vals = val.split(',');
  10. if(val.length == 0){
  11. return {}
  12. }
  13. if (val.length > 200) {
  14. return {
  15. pattern: true
  16. };
  17. }
  18. else
  19. for (var i = 0; i < vals.length; i++) {
  20. if (!valchange.test(vals[i]) && !valchange1.test(vals[i])) {
  21. return {
  22. pattern: true
  23. };
  24. }
  25. }
  26. return {}
  27. };
  28. }

5.子网掩码校验

/^((254|252|248|240|224|192|128)\.0\.0\.0|255\.(254|252|248|240|224|192|128|0)\.0\.0|255\.255\.(254|252|248|240|224|192|128|0)\.0|255\.255\.255\.(254|252|248|240|224|192|128|0))$/

6.默认网关、DNS校验

/^([1-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])$/

7.可输入单条IP或CIDR

/^([0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.([0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}(\/([1-9]|[1-2]\d|[3][0-2])){0,1}$/

8.可输入多条IP或CIDR,以分号分隔

/^(?:(?:^|;)(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(\.([0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}(\/([1-9]|[1-2]\d|[3][0-2])){0,1})+$/

9.可输入多条CIDR,以分号分隔

/^(?:(?:^|;)(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])(?:\.(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}(?:\/([1-9]|[1-2]\d|[3][0-2])))+$/

10、强密码校验

/((^(?=.*[a-z])(?=.*[A-Z])(?=.*\W)[\da-zA-Z\W]{8,18}$)|(^(?=.*\d)(?=.*[A-Z])(?=.*\W)[\da-zA-Z\W]{8,18}$)|(^(?=.*\d)(?=.*[a-z])(?=.*\W)[\da-zA-Z\W]{8,18}$)|(^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[\da-zA-Z\W]{8,18}$))/       //必须包含大写字母,小写字母,数字和特殊符号中的任意3种,8-18字符

11、时间段校验

  1. //1.时间段校验 例11:12~13:11,不可跨天
  2. /^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]~(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$/).test(value)
  3. //2.多个时间段,以逗号分隔,不可跨天
  4. /^((0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]~(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9],){0,4}(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]~(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$/).test(value)

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号