最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP經(jīng)典實用正則表達(dá)式小結(jié)

 更新時間:2017年05月04日 10:06:53   作者:yhdsir  
這篇文章主要介紹了PHP經(jīng)典實用正則表達(dá)式,結(jié)合具體實例總結(jié)分析了php基于正則實現(xiàn)驗證、查找、匹配等相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了PHP經(jīng)典實用正則表達(dá)式。分享給大家供大家參考,具體如下:

對于開發(fā)人員來說,正則表達(dá)式是一個非常有用的功能,它提供了 查找,匹配,替換 句子,單詞,或者其他格式的字符串。這里介紹了幾個超實用的php正則表達(dá)式,需要的朋友可以參考下。

1. 驗證域名檢驗一個字符串是否是個有效域名

<?php
$url = "https://www.baidu.com";
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.";
}

2. 從一個字符串中 突出某個單詞

這是一個非常有用的在一個字符串中匹配出某個單詞 并且突出它,非常有效的搜索結(jié)果

<?php
$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";
$text = preg_replace("/(regex)/i", '<span style="background:#5fc9f6">1</span>', $text);
echo $text;

function get_the_title(){
  return 'Save the search.php file and open style.css. Append the following line to it: ';
}
$s = 'and php';
$title  = get_the_title();
$keys= explode(" ",$s);
$title  = preg_replace('/('.implode('|', $keys) .')/iu',
'<strong>\0</strong>',
$title);
echo $title;

3. 從HTML文檔中獲得全部圖片

如果你曾經(jīng)希望去獲得某個網(wǎng)頁上的全部圖片,這段代碼就是你需要的,你可以輕松的建立一個圖片下載機(jī)器人

<?php
$images = array();
$data = file_get_contents('https://www.baidu.com');
preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $data, $media);
unset($data);
$data=preg_replace('/(img|src)("|\'|="|=\')(.*)/i',"$3",$media[0]);
foreach($data as $url)
{
 $info = pathinfo($url);
 if (isset($info['extension']))
 {
  if (($info['extension'] == 'jpg') ||
  ($info['extension'] == 'jpeg') ||
  ($info['extension'] == 'gif') ||
  ($info['extension'] == 'png'))
  array_push($images, $url);
 }
}
var_dump($images);

4. 匹配一個XML或者HTML標(biāo)簽

這個簡單的函數(shù)有兩個參數(shù):第一個是你要匹配的標(biāo)簽,第二個是包含XML或HTML的變量,再強(qiáng)調(diào)下,這個真的很強(qiáng)大

<?php
function get_tag( $tag, $xml ) {
  $tag = preg_quote($tag);
  output($tag);
  preg_match_all('/<'.$tag.'[^>]*>(.*?)<\/'.$tag.'>./',
    $xml,
    $matches,
    PREG_PATTERN_ORDER
  );
  return $matches[1];
}
$xml = '<span>bb<a>bbb</a><a>ccc</a></span><span>bb<a>aa</a><p><a>ddd</a></p></span>';
$tag = 'a';
$return = get_tag($tag, $xml);
var_dump($return);
/*
array(2) {
 [0]=>
 array(3) {
  [0]=>
  string(11) "bbb<"
  [1]=>
  string(10) "aa<"
  [2]=>
  string(11) "ddd<"
 }
 [1]=>
 array(3) {
  [0]=>
  string(3) "bbb"
  [1]=>
  string(2) "aa"
  [2]=>
  string(3) "ddd"
 }
}
array(3) {
 [0]=>
 string(3) "bbb"
 [1]=>
 string(2) "aa"
 [2]=>
 string(3) "ddd"
}
*/

PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:

JavaScript正則表達(dá)式在線測試工具:
http://tools.jb51.net/regex/javascript

正則表達(dá)式在線生成工具:
http://tools.jb51.net/regex/create_reg

希望本文所述對大家PHP程序設(shè)計有所幫助。

相關(guān)文章

最新評論

仁寿县| 台中县| 龙里县| 黄冈市| 白玉县| 武夷山市| 察哈| 顺义区| 江安县| 宝应县| 西畴县| 大连市| 襄樊市| 双流县| 宣武区| 揭东县| 北川| 漯河市| 高淳县| 白城市| 清流县| 黄梅县| 新化县| 电白县| 同德县| 桦川县| 丽水市| 安化县| 闵行区| 桃园县| 盐亭县| 白城市| 连城县| 太仓市| 博客| 舞阳县| 莲花县| 大同县| 万盛区| 津市市| 确山县|