什么是一个好的、清晰的正则表达式来匹配一个必须包含的域名:
- 只有英文字母字符,加上数字
- 包括在域名中有效且可靠处理的空格或其他分隔符
澄清一下,这是为了验证域名。虽然互联网社区有支持域名国际化的举措,但我对此进行了相当多的研究并保持我的解释相当简单,只有包含现代英国英语字符集的字符的域名(包括数字)由域名系统 (DNS) 可靠地处理。我并不是要禁止国际化——我在职业生涯中做了很多相反的工作!
为了回答这个问题,我一直在寻找类似这样的东西(经过测试并且有效)。抱歉,最初的问题对我试图做的事情不够明确,但是我赞成帮助我向社区提供这个答案的建议:
^[\w- .]*$
- '\w' = [a-zA-Z0-9_] 的简写
- '- ' = 允许 '-', ' ', '.'
- 星号 = 前面的任何字符零次或多次