注冊
登录
论坛
搜索
帮助
导航
私人消息 (0)
公共消息 (0)
系统消息 (0)
好友消息 (0)
帖子消息 (0)
正则表达式论坛
»
答疑解惑
» 求助:如何匹配大括号以外的数据
返回列表
发帖
snopo
发短消息
加为好友
snopo
当前离线
UID
1821
帖子
31
精华
0
积分
24
阅读权限
10
在线时间
35 小时
注册时间
2010-6-23
最后登录
2011-10-22
新手上路
1
#
跳转到
»
倒序看帖
打印
字体大小:
t
T
发表于 2010-7-21 14:22
|
只看该作者
求助:如何匹配大括号以外的数据
正则
,
大括号
,
JavaScript
示例:
ab
{a
asd
{aasd}
}
asda
{aasd}
要求:
匹配出大括号之外的所有字符串,上述示例应匹配出标红色字体的字符串。
使用语言:JavaScript
收藏
分享
rex
发短消息
加为好友
rex
当前离线
UID
2
帖子
464
精华
0
积分
254
阅读权限
200
在线时间
224 小时
注册时间
2008-11-3
最后登录
2012-2-3
管理员
2
#
发表于 2010-7-23 18:39
|
只看该作者
我的思路是,
使用循环将
\{[^}]\}
复制代码
部分替换为空格;然后再使用
\s+
复制代码
split字串,即得到非{}部分的str。完整代码如下:
<script type="text/javascript" charset="utf-8">
var myStr="ab\n"+
"{a\n"+
"asd\n"+
"{aasd}\n"+
"}\n"+
"asda\n"+
"{aasd}";
while(myStr.match(/[{}]/))
{
myStr= myStr.replace(/\{[^{}]+\}/g, " ");
}
result = myStr.split(/\s+/);
alert(result);
</script>
复制代码
在答疑解惑版提问时,请注明所用语言、范例文本、匹配结果。谢谢!
------------------------------------------------------------------------------
我爱正则表达式
GTalk: rex[at]zhasm[dot]com
Twitter:
rex_zhasm
TOP
ILoveRegex
发短消息
加为好友
ILoveRegex
当前离线
UID
2149
帖子
8
精华
0
积分
2
阅读权限
10
在线时间
6 小时
注册时间
2010-7-15
最后登录
2011-7-31
新手上路
3
#
发表于 2010-7-24 16:21
|
只看该作者
不错,典型的 多个表达式比一个表达式要好解决问题的例子。
TOP
返回列表
网海文摘
正则利器
书记答疑
搜索引擎
闲聊灌水
开发应用
正则引擎
学习资料
站务管理
广告招聘
[收藏此主题]
[关注此主题的新回复]
[通过 QQ、MSN 分享给朋友]