2

preg_match请告诉我如何在PHP 函数中使用各种用于表达式匹配的符号。

除基本信息外,请举例检查有效的电子邮件地址和不应包含 / 的字符串:;{ } * &

4

5 回答 5

2

简单示例.. 验证 $var 是一个字符串,用于验证和检查(a 到 z 和 A 到 Z)字符。

<?php
$var = 'hello';
if (ereg("[a-zA-Z]", $var)) {
  echo 'it was typed correctly';
} else {
  echo 'it was not typed correctly';
}
?>

更多正则表达式语法示例:http ://www.regexlib.com/

编辑:

if (ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$", $email)) {

  echo 'email ok';

} else {

  echo 'email not ok';

}

问候。

于 2009-06-22T22:48:41.467 回答
1

Jeff Atwood最近在他的编码恐怖博客上发表了一篇关于正则表达式的文章。查看“常规程序员的正则表达式”。

于 2009-06-22T22:39:57.150 回答
0

要检查有效邮件,您可以使用内置功能(filter_var()/FILTER_VALIDATE_EMAIL)或使用符合当前 RFC 的现成可用的库。PHP:在 PHP 中解析电子邮件地址。有关preg_match()的示例,您可以访问 php 网站,维基百科上提供了完整的正则表达式选项列表。要了解 Regex,我推荐“ The Regex Coach ”。

于 2009-06-22T22:43:55.567 回答
0

我知道这个问题是关于 PHP 的,但我的目的是说明电子邮件地址验证的复杂性:要检查电子邮件地址是否符合RFC 2822,您可以使用 Perl 模块Email::Address。请查看该模块的来源以及 RFC。

于 2009-06-22T22:51:57.110 回答
0

如果我给 $var = 'hello87%^$' 也返回“输入正确”;

于 2009-08-21T06:17:13.557 回答