为了账号安全,请及时绑定邮箱和手机立即绑定

如何编写匹配第一个和最后一个引号之间的所有内容的正则表达式?

如何编写匹配第一个和最后一个引号之间的所有内容的正则表达式?

临摹微笑 2021-08-26 17:03:40
我尝试在引号之间匹配多个值(这些值可以是空格以外的任何值)我能达到的最好结果是匹配第一个和最后一个引号之间的所有内容这是正则表达式\[\[\[(\w*img\w*)\s(\w*id|url\w*)+="([^"]|.*)"\]\]\]这是我尝试匹配的字符串(值是数字,但我可以有网址或任何类似的东西)[[[img id="37" w="100" h="70"]]]我应该得到所有参数及其相关值,但我只得到一个值为 beeing 37" w="100" h="70 的参数我知道我很接近,但这个很棘手
查看完整描述

1 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

我不认为你需要所有的\w. 而且我还建议按照评论中的建议将任务分为两部分。

但是,我也看到了一个选项,只需一步即可:

\[\[\[img(?:\s(\w+)="([^"]+)")?(?:\s(\w+)="([^"]+)")?(?:\s(\w+)="([^"]+)")?\]\]\]

这基本上是 wrapper [[[]]],一个普通的字符部分img,然后(?:\s(\w+)="([^"]+)")?根据您期望出现的属性重复多次。(\w+)匹配属性的名称([^"]+)及其值。


查看完整回答
反对 回复 2021-08-26
  • 1 回答
  • 0 关注
  • 356 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号