gpt4 book ai didi

regex - 正则表达式在括号中查找数字,但仅在字符串的开头

转载 作者:行者123 更新时间:2023-12-02 08:27:49 26 4
gpt4 key购买 nike

免责声明:我是编写正则表达式的新手,所以唯一的问题可能是我缺乏经验。

我正在尝试编写一个正则表达式来查找括号内的数字,并且我希望数字和括号都包含在选择中。但是,我只希望它在字符串的开头匹配。所以在下面的文本中,我希望它得到 (10),而不是 (2) 或(图 50)。

(10) Joystick Switch - Contains control switches (Figure 50)
Two (2) heavy lifting straps

到目前为止,我有 (\(\d+\)) 得到 (10) 和 (2)。我知道 ^ 应该匹配字符串(或行)的开头,但我无法让它工作。我在这里和其他网站上查看了很多类似的问题,但只找到了部分解决方案(在括号内查找内容,仅查找字符串开头的数字等)并且还没有能够将它们放在一起工作。

我正在使用它在 CAT 工具中创建一个过滤器(对于那些正在翻译的人),这意味着不涉及其他编码语言;本质上,我一直在使用 RegExr测试我写的所有其他表达式,效果很好。

最佳答案

正则表达式应该是

^\(\d+\)
  • ^ 将正则表达式锚定在字符串的开头。

  • \( 匹配 (。应该转义,因为它在正则表达式中有特殊含义

  • \d+ 匹配一位或多位数字

  • \) 匹配 )

  • 不需要像 (\(\d+\)) 这样的括号,因为没有其他字符与模式匹配。只有当您需要从匹配的模式中提取部分时才需要它

    例如,如果您想匹配 (50) 但要从模式中提取数字 50 那么您可以使用

    \((\d+)\)

    这里 \d+ 部分位于捕获的组 1 中,即捕获的组 1 将是 50 其中匹配的整个字符串是 (50 )

Regex Demo

关于regex - 正则表达式在括号中查找数字,但仅在字符串的开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30405739/

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