JavaScript正则表达式19例(2)

简介:

(……续例1)

例2:匹配成对的HTML标记
 

 
 
  1. void function reg_02() //匹配成对的HTML标记  
  2. {  
  3.     var s1 = "<body bgcolor=\"#FFFFFF\">Mengliao</body>",  
  4.         s2 = "<h3 class=\"s1\" align=\"center\">Bosun Network</h3>",  
  5.         s3 = "<div>梦辽软件</DIV>",  
  6.         s4 = "<div>Baiyu</span>";  
  7.     var r = /^<([a-z]+[a-z0-9]*).*>.*<\/\1>$/ig;  
  8.     for (i = 1; i <= 4; i++)  
  9.     {  
  10.         t = "alert(s" + i + ".match(r));";  
  11.         eval(t);  
  12.     }  

行7:这是ECMAScript另外一种实例化正则表达式的方法,即使用两个/符号作为开始和结束,igm参数放在最后。
这个例子要求匹配成对的HTML标记,既然是成对,一定要在匹配前半个HTML标记后,将其保存,否则无法判断后半个标记是否与前半个标记一样,这需要使用正则表达式的组。
^符号从行首开始,<符号和>符号匹配HTML标记的尖括号,就是<>字符本身。
()符号表示将其中匹配的内容定义为一个组,其名称为1
[a-z]符号表示一个集合,由小写字母构成,当然,由于使用了开关i,所以大小写将不再敏感。
+符号表示匹配一次或多次,即至少需要一次。
同样[a-z0-9]符号表示由小写字母和数字构成的集合;*符号表示匹配0次或多次,即可以没有此部分。
.符号表示任意字符。
\/符号表示转义字符,即HTML结束标记中的/字符。
\1符号表示引用前面匹配的组1,当然,前面用()符号匹配的只有组1,如果有多个可以指定\2\3等,最多指定9个。
$符号表示匹配至行尾。
开关ig与例1是一样的。

运行结果:除了最后一个,其余都是可以匹配的。

(未完待续……)










本文转自 BlackAlpha 51CTO博客,原文链接:http://blog.51cto.com/mengliao/466028,如需转载请自行联系原作者
目录
相关文章
|
28天前
|
移动开发 JavaScript 前端开发
JavaScript的正则表达式实现邮箱校验
JavaScript的正则表达式实现邮箱校验
45 1
|
1月前
|
JavaScript 前端开发
JavaScript随手笔记 --- 用正则表达式匹配字符串是否为运算公式
JavaScript随手笔记 --- 用正则表达式匹配字符串是否为运算公式
|
1月前
|
JavaScript 前端开发
javascript中的正则表达式
javascript中的正则表达式
|
2月前
|
JavaScript 前端开发
JavaScript中的正则表达式构造函数和正则表达式字面量
JavaScript中的正则表达式构造函数和正则表达式字面量
|
3月前
|
JavaScript 前端开发 API
【JavaScript】<正则表达式Regular Expression>JavaScript正则表达式解析
【1月更文挑战第17天】【JavaScript】<正则表达式Regular Expression>JavaScript正则表达式解析
|
4月前
|
前端开发 JavaScript
前端JavaScript入门-day08-正则表达式
前端JavaScript入门-day08-正则表达式
34 0
|
1月前
|
监控 JavaScript 前端开发
JavaScript 正则表达式详解
【2月更文挑战第26天】
34 1
JavaScript 正则表达式详解
|
3月前
|
JavaScript
js如何去实现用正则表达式来判断一个值
js如何去实现用正则表达式来判断一个值
13 0
|
3月前
|
机器学习/深度学习 JavaScript 前端开发
JavaScript 正则表达式
JavaScript 正则表达式
96 0
|
3月前
|
存储 JavaScript 前端开发
JavaScript:正则表达式
JavaScript:正则表达式
28 1