【问题标题】:What is the regex for extracting @[1-99] from a string? [duplicate]从字符串中提取 @[1-99] 的正则表达式是什么? [复制]
【发布时间】:2022-01-11 13:37:01
【问题描述】:

我得到了这个字符串

@12 RegExr 由 gskinner.com 创建,并由 Media Temple 主办。 @42 @20 @1 @w w@32 #$@22 w@5 @2 @10。

我必须用这种模式@[1-99] 提取子字符串。所以对于给定的字符串,结果应该是@12 @42 @20 @1 @2 @10

我尝试了这种模式\B@([1-9]|[1-9][0-9])\b,但它确实采用了#$@12,它不应该这样做。 那是什么正则表达式?

【问题讨论】:

    标签: regex


    【解决方案1】:

    您可以缩短使第二个字符类可选的模式,并在左侧声明一个空白边界

    (?<!\S)@([1-9][0-9]?)\b
    

    Regex demo

    【讨论】:

    • 它适用于给定的字符串,但随后我尝试其他测试用例:@92&( 和 @33rd 但它失败了。正则表达式模式仍然检测到这些子字符串
    猜你喜欢
    • 2014-09-10
    • 1970-01-01
    • 2014-08-25
    • 1970-01-01
    • 2020-09-15
    • 2020-07-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多