PHP preg_match:一个字符类的多次重复

我想允许对一个定义的字符类进行多次重复:)。


$data = 'abc@abc-abc.abc';

echo preg_match('/^[a-z]+[a-z0-9._-]+[a-z]+@+[a-z0-9]+[._-]?+[a-z0-9]+\.?+([a-z0-9]{2,})$/', strtolower($data)); // works (echo 1)


$data = 'abc@abc-abc.abc.abc';

echo preg_match('/^[a-z]+[a-z0-9._-]+[a-z]+@+[a-z0-9]+[._-]?+[a-z0-9]+\.?+([a-z0-9]{2,})$/', strtolower($data)); // doesn't work (echo 0, but should return 1)


www说
浏览 81回答 1
1回答

PIPIONE

您可以在末尾的非捕获组内添加点,并使用(?:*如果零件以开头或组合在末尾应至少发生1次,则使用+*.[._-]^[a-z]+[a-z0-9._-]+[a-z]+@+[a-z0-9]+[._-]?+[a-z0-9]+(?:[._-][a-z0-9]{2,})+$正则表达式演示
打开App,查看更多内容
随时随地看视频慕课网APP