Azure blob容器的正则表达式

问题描述 投票:1回答:2

尝试创建一个正则表达式以在以下代码中使用,以确保我的输入符合Azure blob容器规则,但需要正则表达式意味着我有2个问题。

规则:

  • 字母和数字和连字符
  • 空间不足
  • 必须以字母或数字开头

不要担心我要去的小写.ToLower()之后它。

试过这个,但它保持$和^所以我一定做错了什么?

Regex rgx = new Regex(@"^[a-zA-Z][a-zA-Z0-9]*$");
c# regex azure
2个回答
7
投票

试试这个:

        Regex regEx = new Regex("^[a-z0-9](?:[a-z0-9]|(\\-(?!\\-))){1,61}[a-z0-9]$|^\\$root$");
        var isContainerNameValid = regEx.IsMatch(containerName);

来源:Azure门户 - >新容器创建屏幕 - >查看源:)


2
投票

最新版本的Azure存储库现在包含以下方法:

   Microsoft.WindowsAzure.Storage.NameValidator.ValidateContainerName(myContainerName);

如果名称无效,则会抛出ArgumentException。

比试图制作自己的更好。

© www.soinside.com 2019 - 2024. All rights reserved.