gpt4 book ai didi

regex - 获取最后一个字符直到特定字符

转载 作者:行者123 更新时间:2023-12-02 09:28:59 25 4
gpt4 key购买 nike

假设我有一个字符串something-123

我需要获取它的最后 5 个(或更少)字符,但如果字符串中有一个,则最多只能获取 - 字符,因此结果将类似于 thing ,但如果字符串中没有 -,例如 something123 那么结果将是 ng123,如果字符串类似于 123 那么结果将是 123

我知道如何处理最后 5 个字符:

/.{5}$/

我知道如何将所有内容都匹配到第一个-:

/[^-]*/

但我不知道如何组合它们,更糟糕的是,我需要在不从特定组和类似的高级正则表达式内容中提取匹配的情况下获得匹配,因为我想在 SQL Anywhere 中使用它,请帮忙。


感谢大家的帮助,但看起来完整的正则表达式解决方案对于我的问题来说太复杂了,所以我做得非常简单:SELECT right(regexp_substr('something-123', '[ ^-]*'), 4).

最佳答案

一个选项是将结果分组:

(.{4})-

现在您已经捕获了结果,但没有 -

或者使用环视你可以:

.{4}(?=-)

匹配出现在“-”之前的任意 4 个字符。

关于regex - 获取最后一个字符直到特定字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35013113/

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