本文实例分析了js正则表达式中的单行模式与多行模式。分享给大家供大家参考。具体如下:
js正则表达式是不支持单行模式的。也就是说,不能把某段内容(有换行),采用模式修正符来处理,使整段内容当成一行来处理。
正则多行替换,需要添加/mg模式增强符。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
<html> <head> <script type= "text/javascript" > //正则替换链接,链接有换行 function t1(){ var con = document.getElementsByName( 'content' )[0].value; //内容里有<a href="">.....</a>,但是有换行 var reg = /<a[\s]+[\d\D]*<\/a>/g; //采用[\d\D]或[\w\W]或[\s\S]来解决不能换行问题 alert(con.replace(reg, '----' )); } //正则把每一行的结尾数字,换成#号---多行模式,添加/m(每行当作结尾)和/g(全局匹配)模式增强符 function t2(){ var con = document.getElementsByName( 'content' )[0].value; //写几行文字,每行以数字结尾 var reg = /\d+$/gm; alert(con.replace(reg, '#' )); } </script> </head> <body> <textarea rows= "5" cols= "30" name= "content" ></textarea><br /> <button onclick= "t1();" >正则替换链接(需要考虑换行情况)</button><br /> <button onclick= "t2();" >正则多行替换</button><br /> </body> </html> |
希望本文所述对大家的正则表达式学习有所帮助。