php過濾字元串
㈠ php 如何去掉字元串中重復的字元
<?php
$str='大家好,我有話要說我有話要說我有話要說我有話要說我有話要說我有話要說,這是第一次提問
我有話要說<=這個如何查出
這是第一次來這是第一次來這是第一次來這是第一次來這是第一次來這是第一次來這是第一次來這是第一次來<=這個如何查出
......................................============.............無言...<=.=這兩個';
functionmbstringtoarray($str,$charset){
$strlen=mb_strlen($str);
while($strlen){
$array[]=mb_substr($str,0,1,$charset);
$str=mb_substr($str,1,$strlen,$charset);
$strlen=mb_strlen($str);
}
return$array;
}
$arr=mbstringtoarray($str,"utf8");//分割字元串
$arr=array_unique($arr);//過濾重復字元
$str=implode('',$arr);//合並數組
echo$str;
?>
㈡ PHP 如何過濾特殊字元 如 ◆ )- : 、 、!! / 等
^PHP 中的 preg_replace() 函數可以實現
實例:只匹配中文
<?php
$str="php)!內!編程";
echopreg_replace("/[^容x{4e00}-x{9fa5}]/iu",'',$str);
?>
㈢ PHP中如何過濾掉非漢字字元
首先需要先把帶有中文的字元串進行編碼轉化,由GB2312編碼轉化為UTF-8編碼。
這樣是為了PHP正則表達內式可以正容確的去匹配
然後通過preg_match_all()函數以及相應的中文匹配正則表達式,把所有的中文匹配出來
最後,把匹配到的中文字元串再轉為B2312編碼,這樣做是為了可以在網頁編碼為GB2312上正確顯示。
例如:
<?php
$str = "ddddvvv(,中文.)dfdsfds字元啊.";
//把GB2312編碼轉化為 UTF-8編碼
$str = mb_convert_encoding($str, 'UTF-8', 'GB2312');
//正則匹配
preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str, $matches);
//把匹配到的數組連接為字元串
$str = implode('', $matches[0]);
//把UTF-8編碼轉化為 GB2312編碼
$str = mb_convert_encoding($str, 'GB2312', 'UTF-8');
echo $str;
//輸出 中文字元啊
?>
㈣ php字元串過濾
$str = preg_replace("/^.+=(.+)$/", "新內容\\1", $str); //過濾等於號前面的所有字元串(包括等於號)
$str = preg_replace("/^(.+)=.+$/", "\\1"."新內容", $str); //過濾等於號後面的所有字元串(包括等於號)
㈤ PHP字元串過濾
可以用正則實現。給定字元串的規律是3冒號1分號中,前兩個冒號之前是數字,需要回的是第三個冒號與答分號之前的部分。可如下處理:
<?php
$string = "6939376:28407:包裝方式:包裝;5392114:75367881:重量(g):500;20000:7343430:品牌:蒙園;";
preg_match_all("/[^:\d]+:[^;]+;/", $string, $out);
$rst = implode("", $out[0]);
echo $rst;
?>
$rst為"包裝方式:包裝;重量(g):500;品牌:蒙園;"。已經測試是可行的(php5),如有問題歡迎繼續交流
㈥ php如何實現去掉某個字元串之後的內容
去掉某字元內容辦法
strstr(string,string) = strchr(,) //從前面第一次出現某個字元串的地方截取到最後
strrchr(string,string) //從某個字元串從最後出現的位置截取到結尾
strpos(string,string[,int]) //某個字元串第一次出現的位置
strrpos(string,string) //某個字元串最後一次出現的位置
substr(string,int[,int]) //從指定位置開始截取字元串,可以指定截取的長度。strlen(string) //獲取字元串的長度
㈦ php字元串過濾問題,求解
echo preg_replace("/\{(.+?)\}/","",$str);
㈧ php過濾指定字元的函數
explode — 使用一個字元串分割另一個字元串
array explode ( string $delimiter , string $string [, int $limit ] )
此函數返回由字元串組成的數組,每個元素專都是 string 的一個屬子串,它們被字元串 delimiter 作為邊界點分割出來。
<?php
//示例1
$pizza="";
$pieces=explode("",$pizza);
echo$pieces[0];//piece1
echo$pieces[1];//piece2
//示例2
$data="foo:*:1023:1000::/home/foo:/bin/sh";
list($user,$pass,$uid,$gid,$gecos,$home,$shell)=explode(":",$data);
echo$user;//foo
echo$pass;//*
?>
㈨ 整理了php過濾字元串幾個例子
用正則表達式替換。
因為你沒有詳細說明,所以我無法給你演示,找一本正則表達回式手冊答,如果你熟悉php,應該很容易看懂,在php裡面有正則表達式的相關函數,比如替換/匹配都很方便。
以下是幾個例子:
正則表達式說明
/\b([a-z]+) \1\b/gi一個單詞連續出現的位置
/(\w+):\/\/([^/:]+)(:\d*)?([^# ]*)/將一個URL解析為協議、域、埠及相對路徑
/^(?:Chapter|Section) [1-9][0-9]{0,1}$/定位章節的位置
/[-a-z]/A至z共26個字母再加一個-號。
/ter\b/可匹配chapter,而不能terminal
/\Bapt/可匹配chapter,而不能aptitude
/Windows(?=95 |98 |NT )/可匹配Windows95或Windows98或WindowsNT,當找到一個匹配後,從Windows後面開始進行下一次的檢索匹配。
㈩ PHP如何過濾單引號
PHP過濾或者替換字元串的方法很多,比如可以用正則表達式替換。
如果專能確定要過濾或屬替換的字元或字元串的值時,可以用str_replace ()函數。
mixed str_replace ( mixed $search, mixed $replace,mixed $subject [, int &$count ] );
其中,參數
$search表示查找的目標值,也就是 $needle。一個數組可以指定多個目標。
$replace 表示參數$search 的替換值。一個數組可以被用來指定多重替換。
$subject 表示執行替換的數組或者字元串。也就是 haystack。
如果 $subject 是一個數組,替換操作將遍歷整個$subject,返回值也將是一個數組。
參數$count 表示如果被指定,它的值將被設置為替換發生的次數。
例如你想過濾$str 中的單引號,可以這樣寫:
$str = str_replace("'","",$str );