码迷,mamicode.com
首页 > 其他好文 > 详细

条件性 正则表达式的运用

时间:2020-06-14 12:27:54      阅读:71      评论:0      收藏:0      [点我收藏+]

标签:数字   sse   匹配   需要   tps   evel   mozilla   rip   script   

现在有一个需求,我们需要一个正则 要求是9位数字,最多保留2位小数

思考 当以 0开头时 只有2种可能 小数   0,如果既不是0 又不是小数的话 则是一个正数,正数都不满足的话 则字符串不符合要求

条件性正则的MDN:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Assertions

具体是  (?<=条件)then|else 

所以可以构造出:/(?<=^0\.)\d{1,2}$|(^[123456789]{1}\d{0,8}(\.\d{1,2}){0,1}$)|(^0$)/

解释:条件: 0\. 匹配(0.)的话 则 \d{1,2} 小数后面出现1-2位

         否则  正数:开头第一个不能是0的数:^[123456789]{1},后面的数字出现0-8次 \d{0,8},可以匹配小数 则小数部分出现0,1:  (\.\d{1,2}){0,1}$

         或者匹配0:  ^0$

条件性 正则表达式的运用

标签:数字   sse   匹配   需要   tps   evel   mozilla   rip   script   

原文地址:https://www.cnblogs.com/tony-stark/p/13124297.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!