我們在開發(fā)過程中,經(jīng)常會碰到截取中文英文數(shù)字等的問題,大家知道中文所占的字符和英文數(shù)字是不同的;然后我們就會在項(xiàng)目的common里寫一些日常的函數(shù)包含時(shí)間計(jì)算轉(zhuǎn)換和中英文字符截取的函數(shù);比如截取中英文的函數(shù)沒個(gè)幾行代碼恐怕拿不下來的吧,現(xiàn)在就告訴大家一個(gè)簡單的(自己本地運(yùn)行過的),如有問題,請大家多多指教
$c = 'ddaabbccaa';$d = '地球需要我們每個(gè)人的愛護(hù)'; $frist1 = mb_substr( $c, 0, 1 ,"UTF-8"); // d$delete_last1 = mb_substr($d, -1,1,"UTF-8"); // 護(hù)echo $frist1.'+++'.$delete_last1.'<br/>'; // d+++護(hù) $frist2 = mb_substr( $d, 0, 1 ,"UTF-8"); // 地$delete_last2 = mb_substr($d, -1,1,"UTF-8"); // 護(hù)echo $frist2.'+++'.$delete_last2.'<br/>'; // 地+++護(hù) $e = '11aa22cc33';$f = 'aa地球需要我們每個(gè)人的愛護(hù)';$g = '地球需要我們每個(gè)人的愛護(hù)gg';$h = '地球需要我們每個(gè)人的愛護(hù)';$first3 = mb_substr( $e, 0, 1 ,"UTF-8"); // 1$last3 = mb_substr( $f, 0, 1 ,"UTF-8"); // a$delete_last3 = mb_substr($f, -1,1,"UTF-8"); // 護(hù)$delete_last4 = mb_substr($g, -1,1,"UTF-8"); // g$frist4 = mb_substr( $g, 0, 1 ,"UTF-8"); // 地$delete_last5 = mb_substr($h, -1,1,"UTF-8"); // 護(hù) echo $first3.'+++'.$last3.'---'.$delete_last3.'***'.$delete_last4.'&&&'.$frist4.'<br/>'; // 1+++a---護(hù)***g&&&地echo $last3.'...'.$delete_last3.'<br/>'; // a...護(hù)echo $frist4.'...'.$delete_last5.'<br/>'; // 地...護(hù)// 這樣不管字符串里是中英文數(shù)字等都是可以的無需判斷,如: ”地...護(hù)“ 或者 “地...” 或者 “...護(hù)”
PS:過濾字符串中空格的方法
去除字符串首尾中英文空格的方法:
function mbTrim($str) { return mb_ereg_replace('(^( | )+|( | )+$)', '', $str); }
下面的正則驗(yàn)證時(shí)過濾掉用戶輸入的連續(xù)空格,包括全角空格和半角空格
$user = mb_ereg_replace('^( | )+', '', $user);$user = mb_ereg_replace('( | )+$', '', $user);$age = mb_ereg_replace('^( | )+', '', $age);$age = mb_ereg_replace('( | )+$', '', $age); $method = mb_ereg_replace('^( | )+', '', $method);$method = mb_ereg_replace('( | )+$', '', $method);$address = mb_ereg_replace('^( | )+', '', $address);$address = mb_ereg_replace('( | )+$', '', $address); 
















