gpt4 book ai didi

正则表达式匹配字符串中的 2 个或多个数字

转载 作者:行者123 更新时间:2023-12-04 13:43:34 25 4
gpt4 key购买 nike

假设我有这样的字符串:

ABC-L-W7P-1423
ABC-L-W7E-87
CH-L-W7-756

我需要在最后获取号码。该数字可能是 2、3 或 4 位数字。但目前我所拥有的是:
=REGEXREPLACE(B2,"[^0-9]","")

这当然也捕获了我不想要的“W7P”中的“7”。
编辑:

我还需要匹配这样的东西:
CH-M-311-MM

所以总是一个 2、3 或 4(或 5)位数字,但我需要排除个位数。

最佳答案

您可以使用 =REGEXEXTRACT\b[0-9]{2,4}\b :

=REGEXEXTRACT(B2, "\b[0-9]{2,4}\b")

regex demo .

详情 :
  • \b - 前导词边界
  • [0-9]{2,4} - 2 到 4 位数字
  • \b - 尾随词边界

  • 如果您的 2-4 位数字总是以 - 开头,你可以使用
    =REGEXREPLACE(B2,"^.*-([0-9]{2,4})\b.*","$1")

    this regex demo

    详情 :
  • ^ - 字符串开头
  • .*- - 任何 0+ 个字符直到最后 -紧随其后的是...
  • ([0-9]{2,4}) -(组 1 在替换模式中用 $1 表示) - 2 到 4 位数字
  • \b - 尾随词边界
  • .* - 直到字符串末尾的任何字符。
  • 关于正则表达式匹配字符串中的 2 个或多个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38393339/

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