php正則雙引號
1. php高手請進:正則提取超鏈接中的網址和標題,如果兼顧有雙引號和單引號或沒有引號的超鏈接
<?php
$text = "遞歸是一種函數調用自身的機制。這是一種強大的特性可以把某些復雜的東西變得很簡單。<a href='http://mp3..com'>MP1</a><a href=http://mp3..com>MP2</a><a href='http://mp3..com' target='_blank'>MP3</a><a href=http://mp3..com target=mainFrame>MP4</a><a href=http://mp3..com style=\"font-size:32px;color:#e53333;\">MP5</a><a href=\"http://mp3..com\">MP6</a>";
preg_match_all('/<a href=(.*)>(.*)<\/a>/isU',$text,$data_arr);
foreach( $data_arr[1] as $key=>$val ) {
$replace_str = $data_arr[0][$key];
$title = $data_arr[2][$key];
preg_match("/(https?|ftp|mms):\/\/([A-z0-9]+[_\-]?[A-z0-9]+\.)*[A-z0-9]+\-?[A-z0-9]+\.[A-z]{2,}(\/.*)*\/?/",$val,$url_data);
$url = $url_data[0];
$text = str_replace($replace_str,"<br/>\n{$title} {$url}",$text);
}
var_mp($text);
?>
這個可以識別得了網址中包含http開頭的鏈接地址格式的。但如果還需匹配相對地址,建議是將所有可能出現的情況一一替換掉
2. 在PHP正則表達式中雙引號與單引號有什麼區別,雙引號里哪些需要轉義,單引號里又是哪些需要轉義
單引號里不會轉義
因此「\d"會直接傳給正則引擎,然後由正則引擎將\d解釋成數字
雙引號中\d會轉義,由於\d不是有意義的轉義符,因此\d會變成字元『d'傳給正則引擎,所以必須寫成'\\d'
3. php 的單引號和雙引號的用法
$test1 = "PHP";
1:echo "互聯網最流行的技術$test1" //輸出 互聯網最流行的技術PHP
2:echo '互聯網最流行的技術$test1' //輸出 互聯網最流行的技術$test1
上面兩個例子說明,雙引號裡面的變數,會當作變數解釋,單引號裡面的變數會直接當作字元串來處理,就是說,在單引號裡面的變數會失去其變數的性質,變成一個字元串。
如果想用第一句的方法輸入第二句的結果,加轉義符號啊
3:echo "互聯網最流行的技術\$test1" //輸出 互聯網最流行的技術$test1
4:echo "互聯網最流行的技術$test1技術" //本來是想輸出 互聯網最流行的技術PHP技術,但是你發現,告訴你,找不到變數$test1技術,因為沒有加空格,所以它把後面所有的都當成一個變數了。
所以你會發現,很多優秀的作品,都推薦使用''單引號來寫變數,除非裡面是SQL語句。就是防止這類的錯誤。至於為什麼SQL除外,你可以自己想一下!
4. php如何輸出雙引號
需要准備的材料分別是:電腦、php編輯器、瀏覽器。
1、首先,打開php編輯器,新建php文件,例如:index.php。
5. 在PHP正則表達式中雙引號與單引號有什麼區別,雙引號里哪些需要轉義,單引號里又是哪些需要轉義
雙引號裡面的可以轉義,單引號裡面的不能轉義,比如簡單的\d代表數字,那麼在單引號裡面就不代表數字。
6. PHP 正則表達式\\1 \\2是什麼意思
正則表達式中
'\\1' 匹配的是 字元 '\1' 。 (因為 '\\' 匹配字元 '\' )
'\\2' 匹配的是 字元 '\2'
單獨斜杠的 \1 , \2 就是反向引用了。
'\1' 匹配的是 所獲取的第1個()匹配的引用。例如,'(\d)\1' 匹配兩個連續數字字元。
'\2' 匹配的是 所獲取的第2個()匹配的引用。
以此類推