创建正则表达式模式以匹配“string/uuid”模式

Att*_*ila 5 regex uuid jsonschema

像这样的字符串会匹配:

"test/00b46e01-3994-4ac2-939e-2d5052a65961"
Run Code Online (Sandbox Code Playgroud)

或者像这样

"anotherword/58628d3f-becf-4f54-bdea-336ca9247145"
Run Code Online (Sandbox Code Playgroud)

我拥有的 uuid (v4) 正则表达式适用"^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"于我的 JSON 模式(即我的 JSON 对象拥有 uuid 属性),但现在我也想在此模式前面合并“string/”。

Wik*_*żew 4

您可以使用否定字符类,例如在模式开头[^/]+匹配 1 个或多个字符,而不是/和:/^

"^[^/]+/[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
  ^^^^^^
Run Code Online (Sandbox Code Playgroud)

请参阅正则表达式演示

如果您还想匹配之前没有字符的字符串/,请将+量词(匹配 1 次或多次出现)替换为*(0 次或多次出现)。