1

我在http://gskinner.com/RegExr/中尝试了这种正则表达式语法,看起来效果很好。

^[a-z0-9-]+.([a-z]{2,4})$

目的是匹配域名(不包含http或https)

所以我使用preg_match( '/^[a-z0-9-]+.([a-z]{2,4})$/g', 'fathi-hadi.net' ) 但总是返回 false

我不知道为什么

4

1 回答 1

2

当您打开错误报告时,您会注意到preg_match不支持g修饰符:

警告:preg_match() [function.preg-match]:未知修饰符“g”

所以放弃它并使用:

preg_match('/^[a-z0-9-]+\.([a-z]{2,4})$/', 'fathi-hadi.net');

那将匹配。我还结合了 Gerald Schneider 关于转义点的评论,这是一个很好的观点。

于 2013-01-10T14:56:37.023 回答