PHP指定擷取字串中的中英文或數字字元的例項分享

2022-10-06 09:36:11 字數 1993 閱讀 2831

我們在開發過程中,經常會碰到擷取中文英文數字等的問題,大家知道中文所佔的字元和英文數字是不同的;然後我們就會在專案的common裡寫一些日常的函式包含時間計算轉換和中英文本元擷取的函式;比如擷取中英文的函式沒個幾行**恐怕拿不下來的吧,現在就告訴大家乙個簡單的(自己本地執行過的),如有問題,請大家多多指教

$c = 'ddaabbccaa';

$d = '地球需要我們每個人的愛護';

$frist1 = mb_substr( $c, 0, 1 ,"utf-8"); // d

$delete_last1 = mb_substr($d, -1,1,"utf-8"); // 護

echo $frist1.'+++'.$delete_last1.'

'; // d+++護

$frist2 = mb_substr( $d, 0, 1 ,"utf-8"); // 地

$delete_last2 = mb_程式設計客棧substr($d, -1,1,"utf-8"); // 護

echo $frist2.'+++'.$delete_last2.'

'; // 地+++護

$e = '11aa22cc33';

$f = 'aa地球需要我們每個人的愛護';

$g = '地球需要我們每個人的愛護gg';

$h = '地球需要我們每個人的愛護';

$first3 = mb_substr( $e, 0, www.cppcns.com1 ,"utf-8"); // 1

$last3 = mb_substgmigrkbkr( gmigrkbk$f, 0, 1 ,"utf-8"); // a

$delete_last3 = mb_substr($f, -1,1,"utf-8"); // 護

$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"); // 護

echo $first3.'+++'.$last3.'---'.$delete_last3.'***'.$delete_last4.'&&&'.$frist4.'

'; // 1+++a---護***g&&&地

echo $last3.'...'.$delete_last3.'

'; // a...護

echo $frist4.'...'.$delete_last5.'

'; // 地...護

// 這樣不管字串裡是中英文數字等都是可以的無需判斷,如: 」地...護「 或者 「地...」 或者 「...護」

ps:過濾字串中空格的方法

去除字串首尾中英文空格的方法:

function mbtrim($str)

下面的正則驗證時過濾掉使用者輸入的連續空格,包括全形空格和半形空格

$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);

本文標題: php指定擷取字串中的中英文或數字字元的例項分享

本文位址: /wangluo/php/145272.html

PHP 中英文混排擷取字串

轉 由於網上版本太多,不知道誰是原版,so 不標位址了 mb strwidth str,encoding 返回字串的寬度 str 要計算的字串 encoding 要使用的編碼,如 utf8 gbk mb strimwidth str,start,width,tail,encoding 按寬度擷取字串...

字串處理 中英文擷取

判斷乙個字元是ascill字元還是其它字元 如漢,日,韓文本元 param char c,需要判斷的字元 return boolean,返回true,ascill字元 public static boolean isletter char c 得到乙個字串的長度,顯示的長度,乙個漢字或日韓文長度為2...

php 中英文混排字串擷取

需要用到兩個系統函式 1.mb strwidth str,encoding 返回字串的寬度 str 要計算的字串 encoding 要使用的編碼,如 utf8 gbk 2.mb strimwidth str,start,width,tail,encoding 按寬度擷取字串 str 要擷取的字串 s...