在具有 2 个选项的正则表达式中具有不同的字符

我使用 regex 使用gorilla mux定义 URL :

/v2/operations/{operation:(?:ACC00000)\\d+}/meters

这个 URL 最初必须匹配ACC00000xxxxxx 是一个整数。这个正则表达式正在工作。(ACC00000354例如)

现在第三个字符也可以是I. 我尝试将其替换为?,或将其更改为,[C|I]但无法使其与以下两个选项匹配:

  • ACC00000123

  • ACI00000234

知道为什么会失败吗?


暮色呼如
浏览 107回答 2
2回答

烙印99

你需要这个AC[CI]00000\d+“?” 表示该字符出现一次或零次。? 并不意味着任何字符。“[CI]”表示两个字符 C 或 I 应该匹配。任何字符都用点“.”表示。这也可以AC.00000\d+https://regex101.com/r/UKHGFo/1https://regex101.com/r/UKHGFo/2

红颜莎娜

[C|I]这意味着匹配C或| 或者我您应该使用(?:C|I)或(?:(?:ACC|ACI)00000))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go