JS使用正则表达式获取小括号、中括号及花括号内容的方法示例


Posted in Javascript onJune 01, 2018

本文实例讲述了JS使用正则表达式获取小括号、中括号及花括号内容的方法。分享给大家供大家参考,具体如下:

正则表达式的() [] {}有不同的意思。

() 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。

(\s*)表示连续空格的字符串。

[]是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[\s*]表示空格或者*号。

{}一般用来表示匹配的长度,比如 \s{3} 表示匹配三个空格,\s[1,3]表示匹配一到三个空格。

(0-9) 匹配 '0-9′ 本身。 [0-9]* 匹配数字(注意后面有 *,可以为空)[0-9]+ 匹配数字(注意后面有 +,不可以为空){1-9} 写法错误。

[0-9]{0,9} 表示长度为 0 到 9 的数字字符串。

小括号是用于将基本的单元合成一个大的单元,而中括号就是将多个基本单元组成一个选择域,表示其中一个的意思。

例子:

小括号

例子1、我们想匹配123这个整体

(123)就是匹配"123"这个整体,

大括号

而[123]就是匹配1/2/3(1或者2或者3)

再举个三水点靠木小编碰到的一个问题

例如我们想匹配 多个替换<p>  </p>中间多个 的时候

先用中括号[]

<p>[ ]*</p>

匹配内容的就如下图所示

JS使用正则表达式获取小括号、中括号及花括号内容的方法示例

那下面用小括号试试()

<p>( )*</p>

JS使用正则表达式获取小括号、中括号及花括号内容的方法示例

就是我们预想的效果。

其实匹配的正则比较好的是这个,里面万一空字符肯定就不行了

<p>(\s|\ \;| | |\xc2\xa0)*</p>

JS 正则表达式 获取小括号 中括号 花括号内的内容

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>3water.com JS获取括号内容</title>
</head>
<body>
<script type="text/javascript">
var str="123{xxxx}456[我的]789123[你的]456(1389090)789";
var regex1 = /\((.+?)\)/g; // () 小括号
var regex2 = /\[(.+?)\]/g; // [] 中括号
var regex3 = /\{(.+?)\}/g; // {} 花括号,大括号
// 输出是一个数组
console.log(str.match(regex1)); 
console.log(str.match(regex2));
console.log(str.match(regex3));
</script>
</body>
</html>

使用在线HTML/CSS/JavaScript代码运行工具http://tools.3water.com/code/HtmlJsRun测试运行结果如下:

JS使用正则表达式获取小括号、中括号及花括号内容的方法示例

Javascript 相关文章推荐
关于IFRAME 自适应高度的研究
Jul 20 Javascript
最近项目写了一些js,水平有待提高
Jan 31 Javascript
JavaScript Event学习第十一章 按键的检测
Feb 10 Javascript
JavaScript实现网页对象拖放功能的方法
Apr 15 Javascript
JS实现的车标图片提示效果代码
Oct 10 Javascript
对称加密与非对称加密优缺点详解
Feb 06 Javascript
webpack打包单页面如何引用的js
Jun 07 Javascript
一个简单的node.js界面实现方法
Jun 01 Javascript
快速搭建Node.js(Express)用户注册、登录以及授权的方法
May 09 Javascript
vue+express+jwt持久化登录的方法
Jun 14 Javascript
vue mvvm数据响应实现
Nov 11 Javascript
让JavaScript代码更加精简的方法技巧
Jun 01 Javascript
基于JS实现带动画效果的流程进度条
Jun 01 #Javascript
说说node中的可读流和可写流的区别
Jun 01 #Javascript
Angularjs之如何在跨域请求中传输Cookie的方法
Jun 01 #Javascript
React 使用browserHistory项目访问404问题解决
Jun 01 #Javascript
详解vue-router 命名路由和命名视图
Jun 01 #Javascript
node.js利用socket.io实现多人在线匹配联机五子棋
May 31 #Javascript
JS与jQuery实现ListBox上移,下移,左移,右移操作功能示例
May 31 #jQuery
You might like
让你的WINDOWS同时支持MYSQL4,MYSQL4.1,MYSQL5X
2006/12/06 PHP
php微信公众号开发之现金红包
2018/04/16 PHP
laravel 去掉index.php伪静态的操作方法
2019/10/12 PHP
如何通过PHP实现Des加密算法代码实例
2020/05/09 PHP
javascript下操作css的float属性的特殊写法
2007/08/22 Javascript
JQuery Study Notes 学习笔记(一)
2010/08/04 Javascript
通过jQuery源码学习javascript(二)
2012/12/27 Javascript
使用jQuery插件创建常规模态窗口登陆效果
2013/08/23 Javascript
js构造函数、索引数组和属性的实现方式和使用
2014/11/16 Javascript
JS实现向表格中动态添加行的方法
2015/03/30 Javascript
jQuery与JS加载事件用法分析
2016/09/04 Javascript
js获取Get值的方法
2016/09/29 Javascript
详解vue-router2.0动态路由获取参数
2017/06/14 Javascript
JS Testing Properties 判断属性是否在对象里的方法
2017/10/01 Javascript
JS事件绑定的常用方式实例总结
2019/03/02 Javascript
js Array.slice的8种不同用法示例
2019/07/10 Javascript
[58:32]EG vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python Web框架Flask中使用百度云存储BCS实例
2015/02/08 Python
python实现图片处理和特征提取详解
2017/11/13 Python
python实现栅栏加解密 支持密钥加密
2019/03/20 Python
解决pandas展示数据输出时列名不能对齐的问题
2019/11/18 Python
Python可变参数会自动填充前面的默认同名参数实例
2019/11/18 Python
Python telnet登陆功能实现代码
2020/04/16 Python
python开发一个解析protobuf文件的简单编译器
2020/11/17 Python
CSS3 实现飘动的云朵动画
2020/12/01 HTML / CSS
HTML5 canvas画矩形时出现边框样式不一致的解决方法
2013/10/14 HTML / CSS
澳洲女装时尚在线:Blue Bungalow
2018/05/05 全球购物
会计实习生工作总结的自我评价
2013/10/07 职场文书
汽车技术服务与营销专业推荐信
2013/11/29 职场文书
银行演讲稿范文
2014/01/03 职场文书
计算机售后服务承诺书
2014/05/30 职场文书
永远跟党走演讲稿
2014/09/12 职场文书
指导教师推荐意见
2015/06/05 职场文书
廉洁自律准则学习心得体会
2016/01/13 职场文书
详解MySQL连接挂死的原因
2021/05/18 MySQL
MySQL慢查询中的commit慢和binlog中慢事务的区别
2022/06/16 MySQL