如何在javascript中使用docker图像标签解析正则表达式?

0lvr5msh  于 2023-01-04  发布在  Java
关注(0)|答案(1)|浏览(84)

我复制了这个正则表达式,用于在Python中解析docker图像标记。

^(?P<repository>[\w.\-_]+((?::\d+|)(?=/[a-z0-9._-]+/[a-z0-9._-]+))|)(?:/|)(?P<image>[a-z0-9.\-_]+(?:/[a-z0-9.\-_]+|))(:(?P<tag>[\w.\-_]{1,127})|)$

有人能用Javascript重写这个正则表达式吗?
测试字符串:

alpine

alpine:latest

_/alpine

_/alpine:latest

alpine:3.7

docker.example.com/gmr/alpine:3.7

docker.example.com:5000/gmr/alpine:latest

pse/anabroker:latest

Javascript版本here存在模式错误,没有任何匹配项。

yshpjwxd

yshpjwxd1#

您的命名组在JS中具有不同的语法,并且/需要转义
https://regex101.com/r/EpwtjK/1

^(?<repository>[\w.\-_]+((?::\d+|)(?=\/[a-z0-9._-]+\/[a-z0-9._-]+))|)(?:\/|)(?<image>[a-z0-9.\-_]+(?:\/[a-z0-9.\-_]+|))(:(?<tag>[\w.\-_]{1,127})|)$

相关问题