Este é o regex que estou tentando usar:
/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/gim
Encontrei-o neste site e funciona muito bem quando o experimento. Mas assim que coloco em meu código, recebo esta mensagem:
Warning: preg_match() [function.preg-match]: Unknown modifier 'g' in C:\xampp\htdocs\swebook\includes\classes.php on line 22
Alguém pode explicar o que está errado e por que está funcionando naquele site e não no meu código?
Respostas:
Não há modificador
g
parapreg_match
. Em vez disso, você deve usar apreg_match_all
função.Então, em vez de:
preg_match("/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/gim", ....)
usar:
preg_match_all("/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/im", ....)
fonte