js正则匹配以{开头,以}结尾的表达式怎么写?-附源码

基本知识

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)

posted @ 2021-05-12 10:00  咸蛋超人911  阅读(1011)  评论(0编辑  收藏  举报