我正在尝试从一条简单的线中抓取 2 件物品。
[Title](Description)
编辑:实际上一个想要显示的网址称为描述,因为我希望它显示而不是实际解析。
[Trivium](https://www.youtube.com/user/trivium)
在括号(...)之间抓取似乎对我来说根本不起作用。我用谷歌搜索并发现了几种变体,但没有运气,提前致谢:)
EDIT:
尝试了以下方法:
[(.+?)]\((.*)\)
[(.+?)]\([^\(\r\n]*\)
[(.+?)]((.+?))
还有更多 cpl 我再也找不到了
您列出的第一个正则表达式almost说得对。尝试改用这个正则表达式:
\[.+?\]\((.*)\)
正如@PM 77-1 指出的,你需要escape通过在括号前面放置反斜杠来表示括号。原因是括号是特殊的正则表达式元字符,或者具有特殊含义的字符。括号告诉正则表达式引擎查找其中包含的字符类。
你原来的正则表达式[(.+?)]\((.*)\)
实际上是这样做的:
[(.+?)] match a period '.' 1 or more times
\((.*)\) match (anything), i.e. anything contained in parentheses
所以这个正则表达式会匹配.....(stuff)
但会not match [Title](Description)
,后者才是你真正想要的。
这是一个链接,您可以在其中测试工作正则表达式:
正则表达式101 https://regex101.com/r/vK4pN8/2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)