求一个正则匹配的问题

发布于 2022-09-12 23:12:59 字数 395 浏览 17 评论 0

let str ='sss.bbb["sdfsdf"][0].fff'

let result = str.match(/\[(.*?)]/g)  //能匹配到符合[]的所有内容
//我能找到["sdfsdf"]和[0]


//我想也找到sss.bbb和.fff怎么办
//下面方法好像比较笨,有没有更加简单的方法呢?
let result2 = str.match(/(^(.*?)\[|](.*?)\[|(\](.*?)$))/g)

4.14
补充一下,上面描述的确实不够清晰
我想把字符串 'sss.bbb"sdfsdf".fff'
里面的sss / bbb sdfsdf 0 fff 找出来 (按. 分割,也需要查找[]里面的内容)
能否用一个正则表达式就能找到呢?或者尽量少的正则

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

醉态萌生 2022-09-19 23:12:59

没看明白你到底什么规则,就你上面这个结果,split就行了

// => ["sss.bbb", "sdfsdf", ".fff"]
'sss.bbb"sdfsdf".fff'.split('"')

正则的话

// => ["sss.bbb", "sdfsdf", ".fff"]
'sss.bbb"sdfsdf".fff'.match(/([^"]+?)(?="|$)/g)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文