首页 > 语言 > PHP > 正文

php中网址、email、手机号码正则表达代码

2024-09-04 11:47:25
字体:
来源:转载
供稿:网友

1.判断Email:

域名由各国文字的特定字符集、英文字母、数字及“-”(即连字符或减号)任意组合而成, 但开头及结尾均不能含有“-”,“-”不能连续出现,域名中字母不分大小写,域名最长可达60个字节(包括后缀.com、.net、.org等).

/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[.][a-z]{2,3}([.][a-z]{2})?$/i; 

/内容/i 构成一个不区分大小写的正则表达式;

基本规则,代码如下:

  1. preg_match('/^[a-z0-9_-]+(.[_a-z0-9-]+)*@([_a-z0-9-]+.)+([a-z]{2} 
  2. |aero|arpa|biz|com|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel)$/',$email)  

例1,代码如下:

  1. <?php 
  2. function is_email($email){ 
  3. return strlen($email) > 6 && preg_match(“/^[w-.]+@[w-]+(.w+)+$/“, $email); 
  4. ?> 

例2,代码如下:

  1. <html> 
  2.      <body> 
  3.          <?php 
  4.              $email_pattern = '/w{6,16}@w{1,}.w{2,3}/i';     
  5.              $email_valid = 'test_123@126.net'
  6.              $email_invalid = 'test@test%@111@com'
  7.              $matches = array(); 
  8.               
  9.              preg_match($email_pattern$email_valid$matches[]);  
  10.              preg_match($email_pattern$email_invalid$matches[]); 
  11.               
  12.              var_dump($matches); 
  13.          ?> 
  14.      </body> 
  15.  </html> 
  16. //结果 
  17. //array(2) { [0]=> array(1) { [0]=> string(16) "test_123@126.net" } [1]=> array(0) { } } 

2.判断Url:

例1,代码如下:

  1. function is_url($str){ 
  2. return preg_match(“/^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]’:+!]*([^<>"])*$/“, $str); 

例2,php判断url地址并自动转换为超链接,在一段字符串中用正则表达式匹配出url,在将url转换为超链接,点击可访问地址,代码如下:

  1. <?php 
  2. function autolink($foo)  
  3. {  
  4. $foo = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_/+.~#?&//=]+)''<a href="/1" mce_href="/1" target=_blank rel=nofollow>/1</a>'$foo);  
  5. ifstrpos($foo"http") === FALSE ){  
  6. $foo = eregi_replace('(www.[-a-zA-Z0-9@:%_/+.~#?&//=]+)''<a href="http:///1" mce_href="http:///1" target=_blank rel=nofollow >/1</a>'$foo);  
  7. }else{  
  8. $foo = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_/+.~#?&//=]+)''/1<a href="http:///2" mce_href="http:///2" target=_blank rel=nofollow >/2</a>'$foo);  
  9. }  
  10. return $foo;  
  11. ?> 

3.判断手机号码:

例1,代码如下:

  1. function is_mobile($str){ 
  2. return preg_match(“/^(((d{3}))|(d{3}-))?13d{9}$/“, $str); 

例2,代码如下:

  1. if(preg_match("/^13[0-9]{1}[0-9]{8}$|15[0189]{1}[0-9]{8}$|189[0-9]{8}$/",$mobilephone)){     
  2.     //验证通过     
  3.          
  4. }else{     
  5.     //手机号码格式不对     
  6.          

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表