在 Azure B2C 中注册的应用程序的平台中 iOS 捆绑包 ID 的正则表达式
Regex for iOS Bundle ID in platform for application registered in Azure B2C
我需要一个最多 222 个字符的正则表达式
- 必须使用 a-z A-Z 0-9
- 也可以有。和 -
但是:
- 无法从 开始。或 -
- 不能以 结尾。或 -
- 不能有多个,例如“..”或“--”
- 不能只有。或 -
示例:
好:
asd.asd.asd.asd.asd.aadas.asdasdasd
as-d.asd.a-sd
不好:
.asd.asd
-asd.-asd
.-asd.asd
asd.asd.
asd.asd-
asd.asd.-
asd.asd-.
asd.asd--
asd..
asd.asd-.asd
.-
asd--asd..asd
我最终得到了这样的结果
^[^-.]((?!--)[a-zA-Z0-9\-]\.?[^-]){1,100}[^-.]$
但它不包括这种情况 asd.asd-.asd
这是平台的正则表达式 iOS 应用程序注册中的 Bundle ID 。
你可以在字符 class [a-zA-Z0-9\-]
中不带连字符来写它
(注意如果-
在开头或者结尾,不用转义)
^(?=.{1,100}$)[a-zA-Z0-9]+(?:[-.][a-zA-Z0-9]+)*$
^
字符串开始
(?=.{1,100}$)
声明 1-100 个字符
[a-zA-Z0-9]+
重复 1+ 次匹配任何列出的
(?:[-.][a-zA-Z0-9]+)*
可选择重复 -
或 .
并重复 1+ 次列出的任何
$
字符串结束
我需要一个最多 222 个字符的正则表达式
- 必须使用 a-z A-Z 0-9
- 也可以有。和 - 但是:
- 无法从 开始。或 -
- 不能以 结尾。或 -
- 不能有多个,例如“..”或“--”
- 不能只有。或 -
示例:
好:
asd.asd.asd.asd.asd.aadas.asdasdasd
as-d.asd.a-sd
不好:
.asd.asd
-asd.-asd
.-asd.asd
asd.asd.
asd.asd-
asd.asd.-
asd.asd-.
asd.asd--
asd..
asd.asd-.asd
.-
asd--asd..asd
我最终得到了这样的结果
^[^-.]((?!--)[a-zA-Z0-9\-]\.?[^-]){1,100}[^-.]$
但它不包括这种情况 asd.asd-.asd
这是平台的正则表达式 iOS 应用程序注册中的 Bundle ID 。
你可以在字符 class [a-zA-Z0-9\-]
(注意如果-
在开头或者结尾,不用转义)
^(?=.{1,100}$)[a-zA-Z0-9]+(?:[-.][a-zA-Z0-9]+)*$
^
字符串开始(?=.{1,100}$)
声明 1-100 个字符[a-zA-Z0-9]+
重复 1+ 次匹配任何列出的(?:[-.][a-zA-Z0-9]+)*
可选择重复-
或.
并重复 1+ 次列出的任何$
字符串结束