RegEx 接受字符串、# 和数字
RegEx to accept String, # and a number
我正在尝试添加提交消息挂钩以在 Gitlab 中接受以下输入:
bug 12345
bug #12345
BUG # 12345
Bug#12345
bug12345
数字 12345 应更改为任何 5 位或 6 位数字(不小于,不大于)
应该从Bug、BUG还是bug入手
除# 或 space 外,不应有任何其他字符或数字和字符串之间的空白 "Bug/bug/BUG"
我需要尽快获得帮助。
我试图通过以下方式实现这一目标:
^(BUG|bug|Bug)\ |#\d+
但这没有给出所需的输出。我正在参考 :
非常感谢。
您可以使用
^(BUG|bug|Bug) *(?:# *)?\d{5,6}$
如果只想不区分大小写地匹配bug
,可以写成(?i)^Bug *(?:# *)?\d{5,6}$
.
要匹配任何空格,请将模式中的文字空格替换为 \s
结构。
更多详情:
^
- 字符串开头
(BUG|bug|Bug)
- BUG
、bug
或 Bug
*(?:# *)?
- 零个或多个空格后跟一个可选序列 #
后跟零个或多个空格
\d{5,6}
- 五六位数
$
- 字符串结尾。
我正在尝试添加提交消息挂钩以在 Gitlab 中接受以下输入:
bug 12345
bug #12345
BUG # 12345
Bug#12345
bug12345
数字 12345 应更改为任何 5 位或 6 位数字(不小于,不大于)
应该从Bug、BUG还是bug入手
除# 或 space 外,不应有任何其他字符或数字和字符串之间的空白 "Bug/bug/BUG"
我需要尽快获得帮助。
我试图通过以下方式实现这一目标:
^(BUG|bug|Bug)\ |#\d+
但这没有给出所需的输出。我正在参考 :
非常感谢。
您可以使用
^(BUG|bug|Bug) *(?:# *)?\d{5,6}$
如果只想不区分大小写地匹配bug
,可以写成(?i)^Bug *(?:# *)?\d{5,6}$
.
要匹配任何空格,请将模式中的文字空格替换为 \s
结构。
更多详情:
^
- 字符串开头(BUG|bug|Bug)
-BUG
、bug
或Bug
*(?:# *)?
- 零个或多个空格后跟一个可选序列#
后跟零个或多个空格\d{5,6}
- 五六位数$
- 字符串结尾。