【问题标题】:Match the last element in a delimited list?匹配分隔列表中的最后一个元素?
【发布时间】:2013-03-22 20:31:25
【问题描述】:

我有一些用冒号分隔的数据,如下所示:

foo:bar:baz:qux

我想使用正则表达式来匹配 last 元素,在本例中为qux。列表可以是任意长度,如果只有一个元素,则根本没有冒号。

我尝试过使用 vim 的零宽度匹配结构,但我似乎无法让它做我想做的事。

【问题讨论】:

    标签: regex vim vim-syntax-highlighting


    【解决方案1】:

    使用$ 锚点,这意味着正则表达式必须匹配到行尾。

    /[a-zA-Z0-9]*$/
    

    【讨论】:

    • ...聪明。我意识到我一直在尝试匹配 不是 之后(使用 \@!,而我本来可以使用它。谢谢!
    【解决方案2】:
    :\?[^:]\+$
    

    这是可选的冒号,后跟一个或多个非冒号字符,然后是行尾。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-02
      相关资源
      最近更新 更多