gpt4 book ai didi

vim - 返回子字符串匹配 vimscript

转载 作者:行者123 更新时间:2023-12-02 08:04:56 26 4
gpt4 key购买 nike

我想使用带正则表达式的 vimscript 提取 Markdown 链接的 url。

最好是这些行中的内容:

fun! GetLinkUri(str)
return match(a:str, '[.*]\((.*)\)', \1)
endfunc

给定一个字符串,例如:搜索引擎 [Google](https://google.com) blabla它将返回 https://google.com

描述函数的方式不是match的正确使用。有什么办法可以用 match 来实现吗?还有其他功能可以完成这项工作吗?

最佳答案

您将需要使用 matchstr 而不是 match。但这不是您遇到的唯一问题。我会这样做:

return matchstr(a:str, '\[.*\](\zs.*\ze)')
  1. [.*] 表示匹配一个字符,即 '.''* '。如果您想匹配文字方括号,则需要转义方括号。

  2. 不幸的是,matchstr 无法返回单个子组,所以我使用了 \zs\ze 来限制匹配括号之间的部分。

关于vim - 返回子字符串匹配 vimscript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52620307/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com