- A+
基本知识
1、正则表达式组成
正则表达式是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。
正则表达式 = 普通字符+特殊字符(元字符)
2、匹配符
字符匹配符用于匹配某个或某些字符
名词解析:字符簇
在正则表达式中,通过一对方括号括起来的内容,我们就称之为“字符簇”,其表示的是一个范围,但是实际匹配时,只能匹配固定的某个字符。
[a-z] :匹配小写字母从a-z中的任一字符
[A-Z] :匹配大写字母从A-Z中的任一字符
[0-9] :匹配数字从0-9任一字符,相当于d
[0-9a-z] :匹配数字从0-9或小写字母从a-z任一字符
[0-9a-zA-Z] :匹配数字从0-9,小写字母从a-z或者是大写字母从A-Z的任一字符
[abcd] :匹配字符abcd中的任一字符
[1234] :匹配数字1234中的任一字符
在字符簇中存在一个特殊符号^(脱字节),脱字节在字符簇代表取反的含义
[^a-z] :匹配除小写字母从a-z以外的任一字符
[^0-9] :匹配除数字从0-9以外的任一字符
[^abcd] :匹配除abcd以外的任一字符
在正则表达式中还有一类特殊字符,如下所示:
d :匹配一个数字字符,用字符簇表示[0-9]
D :匹配一个非数字字符,也可以使用字符簇[^0-9]或[^d]来表示
w :匹配包括下划线的任何单词字符,用字符簇[0-9a-zA-Z_]
W :匹配任何非单词字符,[^0-9a-zA-Z_]或[^w]
s :匹配任何空白字符,空格、制表符、换行符都可以通过s匹配
S :匹配任何非空白字符,[^s]
.(我是一个点号) :匹配除 "n" 之外的任何单个字符
我们经常需要获得某个标签开始和结束之间的内容,javascript如何实现获得以{开头,以}结尾的内容呢?这里还是得用到正则表达式,我们看看具体怎么实现?
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>js正则匹配以{开头,以}结尾怎么写?</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <script type="text/javascript"> var str = "{ 'name':'Bill Gates', 'age':62, 'city':'Seattle' },{ 'name':'divde', 'age':54, 'city':'Xian' }"; var res = str.match(/{.*?}/g) ; // s 会被识别成正则表达式 要进行转义 console.log(res); // ["{ 'name':'Bill Gates', 'age':62, 'city':'Seattle' }", "{ 'name':'divde', 'age':54, 'city':'Xian' }"] </script> </body> </html>
以上就是js正则匹配以{开头,以}结尾的写法,是不是很简单呢?
内容参考网站:我爱捣鼓(http://www.woaidaogu.com)