扣丁学堂盘点PHP开辟常用的13个正则表明式验证及

前日扣丁学堂给我们介绍一下有关PHP摄像教程之正则表明式验证介绍及代码详细的情况,首先PHP正则表明式是程序支付中贰个根本的成分,它提供用来描述或协作文本的字符串,如特定的字符、词或算式等。但在一些情形下,用正则表明式去验证三个字符串相比较复杂和积重难返。下边扣丁学堂为您下结论了10种常见的实用PHP正则表明式的写法,希望对你的劳作具备协理。

正则表明式是程序支付中三个注重的因素,它提供用来说述或兼容文本的字符串,如特定的字符、词或算式等。但在好几情形下,用正则表明式去证美赞臣(Meadjohnson)个字符串相比较复杂和困难。本文为你介绍10种普及的实用PHP正则表明式的写法,希望对您的专门的学问有所支持。

正文实例汇报了10个实用的PHP正则表明式汇总,分享给大家供大家参照他事他说加以考察。具体如下:

对此开垦人士来讲,正则表明式是一个非常平价的作用,它提供了寻觅,相配,替换句子,单词,大概其余格式的字符串。那篇小说重要介绍了拾伍个超实用的PHP正则表明式,供给的对象能够参见下。

图片 1

  1. 验证E-mail地址

正则表明式是前后相继开垦中三个重大的因素,它提供用来说述或协作文本的字符串,如特定的字符、词或算式等。但在一些意况下,用正则表明式去证Bellamy(Bellamy)个字符串比较复杂和积重难返。本文为您介绍10种常见的实用PHP正则表明式的写法,希望对你的行事富有帮忙。

在那篇小说里,作者已经编写制定了17个超有用的正则表明式,WEB开荒职员都应该将它收藏到本身的工具包。验证域名检查三个字符串是或不是是个有效域名。

​ 1、 验证Email地址

  那是三个用于评释电子邮件的正则表达式。但它并不是高效、完美的消除方案。在此不推荐应用。

1. 验证E-mail地址

$url="";

那是多少个用以注明电子邮件的正则表明式。但它实际不是飞快、完美的技术方案。在此不推荐使用。

123456789$email = "test@ansoncheung.tk";if(preg_match('/^[^0-9][a-zA-Z0-9_] ([.][a-zA-Z0-9_] )*[@][a-zA-Z0-9_] ([.][a-zA-Z0-9_] )*[.][a-zA-Z]{2,4}$/',$email)){ echo "Your email is ok.";} else { echo "Wrong email addressformat";}

  那是二个用以注解电子邮件的正则表明式。但它却非快捷、完美的实施方案。在此不推荐使用。

if(preg_match('/^(http|https|ftp)://([A-Z0-9][A-Z0-9_-]*(?:.[A-Z0-9][A-Z0-9_-]*) ):?(d )?/?/i'$url)) {

$email = "test@ansoncheung.tk";

  为了越发使得认证电子邮件地址,推荐应用filer_var。

复制代码 代码如下:

echo"Your url is ok.";

if

123456if (filter_var('test email@ansoncheung', FILTER_VALIDATE_EMAIL)) { echo"Your email is ok.";} else { echo "Wrong email address format.";}

$email = "test@ansoncheung.tk";
if (preg_match('/^[^0-9][a-zA-Z0-9_] ([.][a-zA-Z0-9_] )*[@][a-zA-Z0-9_] ([.][a-zA-Z0-9_] )*[.][a-zA-Z]{2,4}$/',$email)) {
    echo "Your email is ok.";
} else {
    echo "Wrong email address format";
}

}else{

(preg_match('/^[^09][azAZ09_] ([.][azAZ09_] )[@][azAZ09_] ([.][azAZ09_] )[.][azAZ]{2,4}$/',$email))

  2. 验证客商名

  为了进一步使得认证电子邮件地址,推荐使用filer_var。

echo"Wrong url.";

{

  那是二个用于评释客户名的实例,在那之中囊括字母、数字(A-Z,a-z,0-9)、下划线以及最低5个字符,最大二十一个字符。同有时间,也能够依附须求,对最小值和最大值做客观的修改。

复制代码 代码如下:

}

echo "Your email is ok.";

12345678 $username = "user_name12"; if (preg_match('/^[a-zd_]{5,20}$/i', $username)) {  echo "Your username is ok."; } else {  echo "Wrong username format."; }

if (filter_var('test email@ansoncheung', FILTER_VALIDATE_EMAIL)) {
    echo "Your email is ok.";
} else {
    echo "Wrong email address format.";
}

从贰个字符串中崛起某些单词

} else {

 

2. 注明顾客名

那是三个不胜实用的在一个字符串中相称出某些单词况兼优良它,特别有效的搜寻结果。

echo "Wrong email address format";

   3. 证实电话号码

  那是四个用于注脚顾客名的实例,在那之中包罗字母、数字(A-Z,a-z,0-9)、下划线以及最低5个字符,最大21个字符。同有时候,也能够根据需求,对最小值和最大值做客观的改换。

$text = "Sample sentence from KomunitasWeb, regex has become popular in web programming. Now we learn regex. According to wikipedia, Regular expressions (abbreviated as regex or

}

  这是一个验证美利哥电话号码的实例。

复制代码 代码如下:

regexp, with plural forms regexes, regexps, or regexen) are written in a formal language that can be interpreted by a regular expression processor";

为了进一步平价认证电子邮件地址,推荐应用filer_var。

12345678$phone = "(021)423-2323";if(preg_match('/(?d{3})?[-s.]?d{3}[-s.]d{4}/x', $phone)) { echo"Your phone number is ok.";} else { echo "Wrong phone number.";}

$username = "user_name12";
if (preg_match('/^[a-zd_]{5,20}$/i', $username)) {
    echo "Your username is ok.";
} else {
    echo "Wrong username format.";
}

$text = preg_replace("/b(regex)b/i", '<span style="background:#5fc9f6">1</span>', $text);

if (filter_var('test email@ansoncheung', FILTER_VALIDATE_EMAIL)) {

  4. 验证IP地址

3. 认证电话号码

echo $text;

echo "Your email is ok.";

  那是二个用来验证IPv4地址的实例。

  那是叁个认证花旗国电话号码的实例。

崛起查询结果在您的 WordPress 博客里就好像刚刚自个儿说的,下面的这段代码能够很有益于的检索出结果,而这边是三个更加好的章程去推行搜索在有些WordPress的博客上开发你的文书 search.PHP ,然后找到方法 the_title然后用上面代码替换掉它。

} else {

123456789$IP = "198.168.1.78";if(preg_match('/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/',$IP)){ echo "Your IP address is ok.";} else { echo "Wrong IPaddress.";}

复制代码 代码如下:

echo $title;

echo "Wrong email address format.";

  5. 证实邮编

$phone = "(021)423-2323";
if (preg_match('/(?d{3})?[-s.]?d{3}[-s.]d{4}/x', $phone)) {
    echo "Your phone number is ok.";
} else {
    echo "Wrong phone number.";
}

Now, just before the modified line, add this code:

}

  那是一个用来评释邮编的实例。

4. 验证IP地址

<?PHP

2、验证顾客名

12345678$zipcode = "12345-5434";if(preg_match("/^([0-9]{5})(-[0-9]{4})?$/i",$zipcode)) { echo "Your Zip codeis ok.";} else { echo "Wrong Zip code.";}

  那是贰个用来表明IPv4地址的实例。

$title = get_the_title;

那是叁个用来评释顾客名的实例,当中满含字母、数字、下划线以及最低5个字符,最大二十个字符。同时,也得以根据须要,对最小值和最大值做客观的改变。

  6. 表达SSN(社会保证号)

复制代码 代码如下:

$keys= explode(" ",$s);

$username = "user_name12";

  那是三个验证美国SSN的实例。

$IP = "198.168.1.78";
if (preg_match('/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/',$IP)) {
    echo "Your IP address is ok.";
} else {
    echo "Wrong IP address.";
}

$title = preg_replace('/('.implode('|', $keys) .')/iu',

if (preg_match('/^[azd_]{5,20}$/i', $username)) {

1234567$ssn = "333-23-2329";if (preg_match('/^[d]{3}-[d]{2}-[d]{4}$/',$ssn)){ echo "Your SSN is ok.";} else { echo "Wrong SSN.";}

5. 认证邮编

'<strong>\0</strong>',

echo "Your username is ok.";

  7. 证实银行卡号

  那是多少个用来申明邮编的实例。

$title);

} else {

123456789$cc = "378282246310005";if(preg_match('/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6011[0-9]{12}|3(?:0[0-5]|[68][0-9])[0-9]{11}|3[47][0-9]{13})$/',$cc)) { echo "Your credit card number is ok.";} else { echo"Wrong credit card number.";}

复制代码 代码如下:

?>

echo "Wrong username format.";

  8. 验证域名

$zipcode = "12345-5434";
 if (preg_match("/^([0-9]{5})(-[0-9]{4})?$/i",$zipcode)) {
 echo "Your Zip code is ok.";
 } else {
 echo "Wrong Zip code.";
 }

Save the search.PHP file and open style.css. Append the following line to it:

}

12345678$url = ")) { echo "Your url is ok.";} else { echo "Wrong url.";}

6. 表达SSN(社会保障号)

strong.search-excerpt { background: yellow; }

3、验证电话号码

  9. 从一定U陆风X8L中领取域名

  那是一个表明U.S.A.SSN的实例。

设若您早已希望去获得有个别网页上的整个图纸,这段代码就是您必要的,你能够轻松的树立一个图片下运载飞机器人。

那是多个认证美利坚联邦合众国电话号码的实例。

123456$url =""; preg_match('@^(?:, $matches); $host = $matches[1];echo $host;

复制代码 代码如下:

$images = array;

$phone = "4232323";

  10. 将文中至关心爱惜要词高亮展现

$ssn = "333-23-2329";
if (preg_match('/^[d]{3}-[d]{2}-[d]{4}$/',$ssn)) {
    echo "Your SSN is ok.";
} else {
    echo "Wrong SSN.";
}

preg_match_all('/(img|src)=("|')[^"'>] /i', $data, $media);

if (preg_match('/?[s.]?d{3}[s.]d{4}/x', $phone)) {

123456789101112  $text = "Sample sentence from AnsonCheung.tk, regular expression has become  popular in web programming. Now we learn regex. According to wikipedia, Regular  expressions (abbreviated as regex or regexp, with plural forms regexes, regexps,  or regexen) are written in a formal language that can be interpreted by a  regular expression processor";    $text = preg_replace("/b(regex)b/i",     '<span style="background:#5fc9f6">1</span>', $text);    echo $text;

7. 申明信用卡号

unset($data);

echo "Your phone number is ok.";

  希望本文所述对大家的PHP程序设计具备扶助。

复制代码 代码如下:

$data=preg_replace('/(img|src)("|'|="|=')(.*)/i',"$3",$media[0]);

} else {

$cc = "378282246310005";
if (preg_match('/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6011[0-9]{12}|3(?:0[0-5]|[68][0-9])[0-9]{11}|3[47][0-9]{13})$/', $cc)) {
    echo "Your credit card number is ok.";
} else {
    echo "Wrong credit card number.";
}

foreach($data as $url)

echo "Wrong phone number.";

8. 验证域名

{

}

复制代码 代码如下:

$info = pathinfo($url);

4、验证IP地址

$url = "";
 if (preg_match('/^(http|https|ftp)://([A-Z0-9][A-Z0-9_-]*(?:.[A-Z0-9][A-Z0-9_-]*) ):?(d )?/?/i', $url)) {
 echo "Your url is ok.";
 } else {
 echo "Wrong url.";
 }

if (isset($info['extension']))

这是贰个用来验证IPv4地址的实例。

9. 从一定U智跑L中领到域名

{

$IP = "198.168.1.78";

复制代码 代码如下:

if (($info['extension'] == 'jpg') ||

if

$url = "";
 preg_match('@^(?:', $url, $matches);
 $host = $matches[1];
echo $host;

($info['extension'] == 'jpeg') ||

(preg_match('/^(([19]?[09]|1[09]{2}|2[04][09]|25[05]).){3}([19]?[09]|1[09]{2}|2[04][09]|25[05])$/',$IP))

10. 将文中要害词高亮展现

($info['extension'] == 'gif') ||

{

复制代码 代码如下:

($info['extension'] == 'png'))

echo "Your IP address is ok.";

$text = "Sample sentence from AnsonCheung.tk, regular expression has become popular in web programming. Now we learn regex. According to wikipedia, Regular expressions (abbreviated as regex or regexp, with plural forms regexes, regexps, or regexen) are written in a formal language that can be interpreted by a regular expression processor";
$text = preg_replace("/b(regex)b/i", '<span style="background:#5fc9f6">1</span>', $text);
echo $text;

array_push($images, $url);

} else {

意在本文所述对我们的PHP程序设计有着支持。

}

echo "Wrong IP address.";

你只怕感兴趣的篇章:

  • PHP使用正则表明式清除超链接文本
  • php幸免sql注入示例深入分析和二种常见攻击正则表达式
  • php正则表达式相配img中自便属性的点子
  • php使用curl和正则表明式抓取网页数据示例
  • php过滤HTML标签、属性等正则表达式汇总
  • 浅谈PHP正则表明式中期维修饰符/i, /is, /s, /isU
  • php中字符串和正则表明式详解
  • PHP正则表达式 /i, /is, /s, /isU等引见
  • php获取超链接文本内容的正则表达式(四种艺术)
  • WEB开采时常用的正则表达式(PHP和Javascript)
  • 平凡采撷整理php正则表达式(超过常规用)
  • PHP正则说明式入门教程(推荐)

}

}

剔除重复字母

5、验证邮编

日常重复输入字母?那些表达式正适合.

那是二个用来证实邮编的实例。

$text = preg_replace("/s(w s)1/i", "$1", $text);

$zipcode = "123455434";

删去重复的标点

if (preg_match("/^?$/i",$zipcode)) {

功效同上,但只是面对标点,白白重复的逗号

echo "Your Zip code is ok.";

合营一个XML可能HTML标签

} else {

那几个轻易的函数有多少个参数:第多个是您要协作的标签,第一个是含有XML或HTML的变量,再重申下,那么些真的很强劲

echo "Wrong Zip code.";

function get_tag( $tag, $xml ) {

}

$tag = preg_quote($tag);

6、验证SSN

preg_match_all('{<'.$tag.'[^>]*>(.*?)</'.$tag.'>.'}',

那是贰个认证美利坚联邦合众国SSN的实例。

$xml,

$ssn = "333232329";

$matches,

if (preg_match('/^[d]{3}[d]{2}[d]{4}$/',$ssn)) {

PREG_PATTERN_ORDER);

echo "Your SSN is ok.";

return $matches[1];

} else {

}

echo "Wrong SSN.";

相配具有属性值的XML或许HTML标签

}

function get_tag( $attr, $value, $xml, $tag=null ) {

7、验证银行卡号

if( is_null($tag) )

$cc = "378282246310005";

$tag = 'w ';

if

else

(preg_match('/^(?:4[09]{12}(?:[09]{3})?|5[15][09]{14}|6011[09]{12}|3(?:0[05]|[68][09])[09]{11}|3[47][09]{13})$/',

$tag = preg_quote($tag);

$cc)) {

$attr = preg_quote($attr);

echo "Your credit card number is ok.";

$value = preg_quote($value);

} else {

$tag_regex = "/<(".$tag.")[^>]*$attrs*=s*".

echo "Wrong credit card number.";

"(['"])$value\2[^>]*>(.*?)</\1>/"

}

preg_match_all($tag_regex,

8、验证域名

$xml,

$url = "";

$matches,

if

PREG_PATTERN_ORDER);

(preg_match('/^(http|https|ftp)://([AZ09][AZ09_](?:.[AZ09][AZ09_]) ):??/?/i',

return $matches[3];

$url)) {

}

echo "Your url is ok.";

相称十六进制颜色值

} else {

web开辟者的另三个风趣的工具,它同意你合作和表明十六进制颜色值.

echo "Wrong url.";

$string = "#555555";

}

if (preg_match('/^#(?:(?:[a-fd]{3}){1,2})$/i', $string)) {

9、从一定UTiggoL中提取域名

echo "example 6 successful.";

4$url = "";

}

preg_match('@^(?:', $url, $matches);

寻觅页面 title

$host = $matches[1];

这段代码方便搜索和打字与印刷网页 <title>和</title>之间的内容

echo $host;

$fp = fopen("");

10、将文中珍视词高亮显示

while (!feof($fp) ){

$text = "Sample sentence from AnsonCheung.tk, regular expression has

$page .= fgets($fp, 4096);

become

}

popular in web programming. Now we learn regex. According to wikipedia,

$titre = eregi("<title>(.*)</title>",$page,$regs);

Regular

echo $regs[1];

expressions (abbreviated as regex or regexp, with plural forms regexes,

fclose($fp);

regexps,

解释 Apache日志

or regexen) are written in a formal language that can be interpreted by

大部网址使用的都以老牌的Apache服务器,要是您的网址也是,那么使用PHP正则表达式深入分析apache 服务器日志怎么着?

a

//Logs: Apache web server

regular expression processor";

//Successful hits to HTML files only. Useful for counting the number of page views.

$text = preg_replace("/bb/i", '1', $text);

'^((?#client IP or domain name)S )s ((?#basic authentication)S s S )s [((?#date and time)[^]] )]s "(?:GET|POST|HEAD) ((?#file)/[^ ?"] ?.html?)??((?#parameters)[^ ?"] )? HTTP/[0-9.] "s (?#status code)200s ((?#bytes transferred)[-0-9] )s "((?#referrer)[^"]*)"s "((?#user agent)[^"]*)"$'

echo $text;

//404 errors only

如上正是有关10个实用的PHP正则表明式的详细介绍,那是一篇对开拓职员很有用的文章,赶紧收藏起来呢,最终想要学习PHP开采本领的同伴不要犹豫了,扣丁学堂是PHP培养锻练才具的一级选拔,想要PHP摄像教程的同伴未来就关系我们的提问老师领取吧,机会总是留给有筹划的人的!扣丁学堂PHP开拓程序员能力交流群:374332265。

'^((?#client IP or domain name)S )s ((?#basic authentication)S s S )s [((?#date and time)[^]] )]s "(?:GET|POST|HEAD) ((?#file)[^ ?"] )??((?#parameters)[^ ?"] )? HTTP/[0-9.] "s (?#status code)404s ((?#bytes transferred)[-0-9] )s "((?#referrer)[^"]*)"s "((?#user agent)[^"]*)"$'

运用智能引号代替双引号

假定您是一个印刷爱好者,你将欣赏这么些允许用智能引号替代双引号的正则表明式,这么些正则被WO奥迪Q5DPRESS在其内容上行使

查查密码的复杂度

本条正则表明式将检查实验输入的原委是不是含有6个或越多字母,数字,下划线和连字符.输入必得满含至少三个大写字母,三个小写字母和贰个数字

'A(?=[-_a-zA-Z0-9]*?[A-Z])(?=[-_a-zA-Z0-9]*?[a-z])(?=[-_a-zA-Z0-9]*?[0-9])[-_a-zA-Z0-9]{6,}z'

WordPress:使用正则获得帖子上的图样

小编通晓许四人是WOLANDDPRESS的使用者,你可能会喜欢并且愿意利用那多少个从帖子的剧情搜索下来的图像代码。使用那几个代码在你的BLOG只必要复制上边代码到您的某部文件里

<?PHP if (have_posts) : ?>

<?PHP while (have_posts) : the_post; ?>

<?PHP

$szPostContent = $post->post_content;

$szSearchPattern = '~<img [^>]* />~';

// Run preg_match_all to grab all the images and save the results in $aPics

preg_match_all( $szSearchPattern, $szPostContent, $aPics );

// Check to see if we have at least 1 image

$iNumberOfPics = count($aPics[0]);

if ( $iNumberOfPics > 0 ) {

// Now here you would do whatever you need to do with the images

// For this example the images are just displayed

for ( $i=0; $i < $iNumberOfPics ; $i ) {

echo $aPics[0][$i];

};

};

endwhile;

endif;

?>

自动生成笑颜图案

被WordPress使用的另二个措施,这段代码可让你把图像自动转变三个笑容符号

移除图片的链接

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<?PHP

$str = '

<a href="

<a href=";

<a href=" src="" /></a>

';

//echo preg_replace("/(<a.*?>)(<img.*?>)(</a>)/", '$2', $str);

echo preg_replace("/(<a.*?>)(<img.*?>)(</a>)/", '2', $str);

?>

以上就是千锋教育的PHP老师为我们总括的贰12个超实用的PHP正则表达式,希望对大家的求学抱有扶助。

 

 

 

本文由星彩网app下载发布于计算机编程,转载请注明出处:扣丁学堂盘点PHP开辟常用的13个正则表明式验证及

TAG标签: 星彩网app下载
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。