我正在尝试编写一个正则表达式模式,以验证我们帐户创建 PowerShell 脚本中的用户名格式。我们的用户名格式为 FirstName.LastName。我们接受连字符、撇号和数字,但只接受以下格式:
名字 - 仅限字母、连字符和撇号。
姓氏 - 接受字母数字、连字符和撇号。
以下正则表达式似乎可以工作,但它无法处理以撇号/连字符开头或结尾的用户名,因为这些是有效字符。
我该如何修改上述内容以确保字符串不匹配,如果它以撇号或连字符开头或结尾?我还想将连字符和撇号限制为每个名字部分中只有一个连续的(例如,“sh-aun”而不是“sha--un”,“sh'aun”而不是“sh''aun”)。
任何帮助都将不胜感激。提前致谢。
名字 - 仅限字母、连字符和撇号。
姓氏 - 接受字母数字、连字符和撇号。
以下正则表达式似乎可以工作,但它无法处理以撇号/连字符开头或结尾的用户名,因为这些是有效字符。
"^[a-zA-Z]+-*'*[a-zA-Z]+\.[a-zA-Z]+-*'*[0-9a-zA-Z]+$"
我该如何修改上述内容以确保字符串不匹配,如果它以撇号或连字符开头或结尾?我还想将连字符和撇号限制为每个名字部分中只有一个连续的(例如,“sh-aun”而不是“sha--un”,“sh'aun”而不是“sh''aun”)。
任何帮助都将不胜感激。提前致谢。