正则表达式匹配0-10的正整数以及使用细节详解

admin4周前笔记27

注:如嫌繁琐;实现方法可直接看一、实现方法;使用细节可直接看 三、总结

一、实现方法

法一:

let reg=/^(\d|10)$/;
reg.test(9.2)//false;
reg.test(9)//true;

法二

let reg=/^([0-9]|10)$/
reg.test(9.2)//false;
reg.test(9)//true;
二、错误写法

1.正则表达式里面不能随便打 空格呀,也会被当做一个 匹配符号。

1)代码

let reg6=/^(\d | 10 )$/

2)结果:因为正则表达式中加了空格(\d后面加了一个空格,10前后分别加了一个空格) ,所以只能匹配:0-9后面加一个空格的字符串,如'9 ';还有字符串 ' 10 ',前后各有一个空格。具体情况如下图所示

image.png

2.正则表达式表示 或 选择时,不仅需要 用 | 分割开各个选项,还要用小括号 把所有选项括起来!否则就会出问题呀,如下面的代码,不添加小括号,匹配到的字符串和 我想要匹配0-10的整数完全不同。

1)代码

let reg9=/^\d|10$/

2)结果

image.png

附:正则表达式 1-100的整数

下面有1-100和0-100的正则表达式

1-100正则表达式:

var reg = new RegExp("^([1-9]|[1-9]\\d|100)$");
 var a=101;
   if(!reg.test(a)) {
           alert("请输入1-100的整数!")
          
       }

0-100正则表达式:

var reg = new RegExp("^(\\d|[1-9]\\d|100)$");
  var a=101;
       if(!reg.test(a)) {
               alert("请输入0-100的整数!")
              
           }
总结

1.正则表达式中不能随便用空格呀,虽然没有显式的使用 /s 空格匹配符,但还是会 被当做 一个匹配符号,必须匹配对应个数的空格才可以匹配成功

2.有多个选项可以选择时,选项之间用 | 分开,所有选项要用 ()括起来这些选项,否则也是有问题的。 /^\d|10$/ 无法实现匹配 0-10的正整数;/^(\d|10)$/可以正确匹配0-10的正整数


相关文章

不会 find 命令这七种用法!你算啥运维人

对于技术面试,它也是一个热门话题。让我们看一道真题:如果你的 Linux 服务器上有一个名为 logs 的目录,如何删除该目录下最后一次访问时间超过一年的日志文件呢?🤔这种情况很常见,但令人惊讶的是,...

专注docker安全:Security Scanning

专注docker安全:Security Scanning

今天我们宣布 Docker Security Scanning(Docker安全扫描,原名项目鹦鹉螺)全面上市。Security Scanning 目前以一个服务附加在 Docker Cloud 私有...

HTTP/HTTPS自动加密上网方案

HTTP/HTTPS自动加密上网方案

方案介绍涉及到的软件BIND: 一个流行的域名解析服务器,我们可以设置哪些域名需要走加密线路。Stunnel: 使用TLS对tcp协议进行加密,也就是对tcp建立一条加密线路。SNI Proxy: 代...

linux的网络服务功能—FTP、SSH和NFS

linux的网络服务功能—FTP、SSH和NFS

现在很多用linux进行开发的工程师,他们大多都是在windows系统上安装虚拟机,然后在虚拟机中安装linux系统,然后在里面完成项目的开发的。这种方式往往需要经常的和windows之间进行文件的传...

Mysql数据库“消失”的对象校验

一、前言最近在配合系统开发商进行上线的过程中,遇到了一个问题,从这个问题上,可以看到mysql数据库中虽然尽可能的想要为我们提供一些更加安全、便捷的功能,但是貌似却仍然存在一些不合理之处。环境如下:名...

Dos一键清理系统垃圾教程

del 命令的参数/F 强制删除只读文件。/S 从所有子目录删除指定文件。/Q 安静模式。删除全局通配符时,不要求确认。rd 命令的参数/s 除目录本身外,还将删除指定目录下的所有子目录和文...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。