gpt4 book ai didi

最后一次出现的字符与另一个字符之间的正则表达式匹配

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

您好,我正在尝试从我的正则表达式中获取以下结果。我需要最后一次出现的 "_" 和句点之间的字符。我有这个正则表达式 [^_]+$ 但它最后没有去掉 ".pdf"

期望的输出

原始字符串:SalesOrder_359959_929058.pdf正则表达式后:929058

最佳答案

试试这个:

([^_.]+)\.

这将匹配第 1 组中 _. 以外的任何字符中的一个或多个,后跟 .。然后,您只需提取第 1 组即可获得所需的子字符串。

如果你的正则表达式引擎支持前瞻,你也可以使用这个:

[^_.]+(?=\.)

这将匹配除 _. 以外的任何字符中的一个或多个,只要紧跟在 . 之后即可,但是. 本身未被捕获。

当然,如果您的字符串中有多个 .,这两种方法都可能失败。在这种情况下,您可能会使用这样的东西:

([^_.]+)\.[^_.]*$

或者这个:

[^_.]+(?=\.[^_.]*$)

关于最后一次出现的字符与另一个字符之间的正则表达式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22082467/

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