尝试创建一个正则表达式以在以下代码中使用,以确保我的输入符合Azure blob容器规则,但需要正则表达式意味着我有2个问题。
规则:
不要担心我要去的小写.ToLower()之后它。
试过这个,但它保持$和^所以我一定做错了什么?
Regex rgx = new Regex(@"^[a-zA-Z][a-zA-Z0-9]*$");
试试这个:
Regex regEx = new Regex("^[a-z0-9](?:[a-z0-9]|(\\-(?!\\-))){1,61}[a-z0-9]$|^\\$root$");
var isContainerNameValid = regEx.IsMatch(containerName);
来源:Azure门户 - >新容器创建屏幕 - >查看源:)
最新版本的Azure存储库现在包含以下方法:
Microsoft.WindowsAzure.Storage.NameValidator.ValidateContainerName(myContainerName);
如果名称无效,则会抛出ArgumentException。
比试图制作自己的更好。