JavaScript正则表达式19例(7)

简介:

(……续例6)

例7:择一匹配

 
 
  1. void function reg_07()  
  2. {  
  3.     var s1 = "0",   
  4.         s2 = "0.23",  
  5.         s3 = "100",  
  6.         s4 = "100.01",  
  7.         s5 = "9.9",  
  8.         s6 = "99.9",  
  9.         s7 = "99.",  
  10.         s8 = "00.1",  
  11.         s9 = "05",  
  12.         s10 = "100.00",  
  13.         s11 = "100.",  
  14.         s12 = "+100.000";  
  15.     var r = /^\+?((100(.0+)?)|([1-9]?[0-9])(\.\d+)?)$/g; //匹配0到100的数  
  16.     for (i = 1; i <= 12; i++)  
  17.     {  
  18.         t = "alert(s" + i + ".match(r));" 
  19.         eval(t);  
  20.     }  

这是一个匹配0到100数字的简单版本。
(.0+)?符号中的括号表示.0+是一个整体,后面的?符号表示该整体可以出现0次或1次,即100后面要么什么都没有,要么有小数点的同时还必须有1个或多个0。
同样(\.\d+)?也是一样的道理,即如果有小数点则后面必须有数字。
中间的|符号表示必选其中之一,即要么包含三位整数,要么包含1位或两位整数。
这其中,()符号起到了分组的作用,与四则运算中的括号是类似的。
运行结果:s1、s2、s3、s5、s6、s10、s12是可以匹配的。

(未完待续……)










本文转自 BlackAlpha 51CTO博客,原文链接:http://blog.51cto.com/mengliao/467831,如需转载请自行联系原作者
目录
相关文章
|
2天前
|
移动开发 JavaScript 前端开发
JavaScript的正则表达式实现邮箱校验
JavaScript的正则表达式实现邮箱校验
60 1
|
2天前
|
JavaScript 前端开发
JavaScript随手笔记 --- 用正则表达式匹配字符串是否为运算公式
JavaScript随手笔记 --- 用正则表达式匹配字符串是否为运算公式
|
2天前
|
JavaScript 前端开发
javascript中的正则表达式
javascript中的正则表达式
|
2天前
|
JavaScript 前端开发
JavaScript中的正则表达式构造函数和正则表达式字面量
JavaScript中的正则表达式构造函数和正则表达式字面量
|
2天前
|
JavaScript 前端开发
用JavaScript正则表达式匹配对应字符串高亮显示,并过滤掉空格、<、>等HTML节点符号
用JavaScript正则表达式匹配对应字符串高亮显示,并过滤掉空格、<、>等HTML节点符号
|
2天前
|
JavaScript 前端开发 索引
JavaScript中的正则表达式:使用与模式匹配
【4月更文挑战第22天】本文介绍了JavaScript中的正则表达式及其模式匹配,包括字面量和构造函数定义方式,以及`test()`、`match()`、`search()`和`replace()`等匹配方法。正则表达式由元字符(如`.`、`*`、`[]`)和标志(如`g`、`i`)组成,用于定义搜索模式。文中还分享了正则使用的技巧,如模式分解、非捕获分组和注释。掌握正则表达式能提升文本处理的效率和代码质量。
|
2天前
|
JavaScript 前端开发 开发者
ChatGPT 回答一道 JavaScript 正则表达式的题目
ChatGPT 回答一道 JavaScript 正则表达式的题目
9 0
|
2天前
|
JavaScript 前端开发
深入了解JavaScript中的正则表达式构造函数和正则表达式字面量
深入了解JavaScript中的正则表达式构造函数和正则表达式字面量
194 1
|
2天前
|
监控 JavaScript 前端开发
JavaScript 正则表达式详解
【2月更文挑战第26天】
37 1
JavaScript 正则表达式详解
|
2天前
|
JavaScript
js如何去实现用正则表达式来判断一个值
js如何去实现用正则表达式来判断一个值
14 0