php正則

http://www.jb51.net/article/14049.htm

PHP代碼
str=pregreplace("/(<a.?>)(.?)(<\/a>)/",\1<spanclass="link">\2</span>\3, str);
其中用了三個子模式(每個圓括號中內容爲一個子模式),第一個是鏈接開始標籤,第二個是鏈接文本,第三個是

然後第二個參數中\1、\2、\3就表示這三個部分,要替換成什麼樣子還不簡單?

獲取頁面中的所有鏈接地址的PHP函數

下面這個用PHP寫的函數,可以獲取任意的字符串string( string可以是從一個HTML頁面文件直接讀取出來的字符串),結果保存在一個數組中返回.該函數自動把電子郵件地址排除在外,而且返回的數組中不會有重複元素.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
function GetAllLink(string)   
{
string = str_replace("\r","",string); string = str_replace("\n","",$string);

regex[url] = “((http|https|ftp|telnet|news):\/\/)?([a-z0-9_-\/.]+.[][a-z0-9:;&#@=_~%\?\/.,+-]+)”; regex[email] = “([a-z0-9_-]+)@([a-z0-9_-]+.[a-z0-9-._-]+)”;

//去掉標籤之間的文字
string=eregireplace(">[<>]+<","><", string);

//去掉JAVASCRIPT代碼
string=eregireplace("<!.//>","", string);

//去掉非的HTML標籤
string=eregireplace("<[a][<>]>","", string);

//去掉EMAIL鏈接
string=eregireplace("<a([]+)href=([\"])mailto:( regex[email])([\”’])[^>]>”,”“, $string);

//替換需要的網頁鏈接
string=eregireplace("<a([]+)href=([\"])( regex[url])([\”’])[^>]>”,”\3\t”, $string);

output[0]=strtok( string, “\t”);
while((temp = strtok(“\t”)))   
{   
if(
temp && !in_array(temp, output))
output[++ i] = $temp;
}

return $output;
}
以下是以PHP的語法所寫的示例
驗證字符串是否只含數字與英文,字符串長度並在4~16個字符之間
?
1
2
3
4
5

發佈了101 篇原創文章 · 獲贊 7 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章