这是我尝试使用的正则表达式:
/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/gim
我在这个网站上找到了它,当我在那里尝试时它效果很好。但是,一旦我将其放入代码中,我就会收到以下消息:
Warning: preg_match() [function.preg-match]: Unknown modifier 'g' in C:\xampp\htdocs\swebook\includes\classes.php on line 22
任何人都可以解释一下出了什么问题,以及为什么它在该网站上运行而不是在我的代码中运行?
g
没有修饰符
preg_match
。相反,您必须使用 preg_match_all
函数。
所以代替:
preg_match("/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/gim", ....)
用途:
preg_match_all("/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/im", ....)
这是我用的正则: (选择|删除)(?:\s*/*.*/\s?)\s+FROM\s+([^\s/;]+)?|(?:(?:(创建|更改|删除)(?:(?:\s/*.*/\s?)\s+OR(?:\s/*.*/\s?)\ s+(替换))?)(?:\s/*.*/\s?)\s+TABLE(?:(?:\s/*.*/\s?) \s+IF(?:\s/*.*/\s?)\s+EXISTS)?|(更新)|(更改)|(插入)(?:\s/*. */\s?)\s+(?:INTO?))(?:\s/*.*/\s?)\s+([^\s/;]+)|( ?:(替换)(?:\s*/*.*/\s?)\s+(?:INTO?))(?:\s/*.*/\s?) \s+([^\s/;]+)(?:\s*/*.*/\s?)\s+([^\s/;]+)