js正则表达式匹配字符串问题,如何修改

vard="1[ddd]sfdsaf$$ccc$$fdsa$$f[bb$$bb]";varpatt=/(\$\$)[^\]]+(\$\$)/g;varresult=d.m... var d = "1[ddd]sfdsaf$$ccc$$fdsa$$f[bb$$bb]";
var patt = /(\$\$)[^\]]+(\$\$)/g;
var result = d.match(patt);
期望结果$$ccc$$,$$f[bb$$
实际结果$$ccc$$fdsa$$f[bb$$
展开
 我来答
紫薇参星
科技发烧友

2016-12-01 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3638万
展开全部

你的js正则表达式我帮你修改了一下,主要是把贪婪模式(+)改成非贪婪模式(+?)

把小括号去掉,把非中括号[^\]]改成非美元符号[^\$]

更改后的js正则表达式 /\$\$[^\$]+?\$\$/g

完整的javascript程序如下

<script type=text/javascript>
     var d = "1[ddd]sfdsaf$$ccc$$fdsa$$f[bb$$bb]"; 
     var patt = /\$\$[^\$]+?\$\$/g; 
     var result = d.match(patt);
     alert(result);
</script>

运行结果

$$ccc$$,$$f[bb$$

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式