2017-07-18 275 views
-2

我需要使用preg_split()函數將字符串拆分爲字母和數字。如何將字符串拆分爲字母字符串和數字字符串?

例:ABC10000成,ABC10000

GSQ39800GSQ39800

WERTYI67888WERTYI67888

字母字符將是字符串的第一個字符(任何數量的)總是然後是數字(任意數量)。

+1

堆棧溢出不是一個代碼或正則表達式寫作服務。你到目前爲止已經嘗試瞭解自己的情況? –

+0

@KenWhite我嘗試過'/([a-zA-Z] +)(\ d +)/',不過preg_match並不適用於preg_split。你認爲那是什麼? – Shaolin

+0

我認爲這是爲了解決人們一旦做出努力並且無法做到的問題。這不是一個免費的編碼服務,您可以發佈您的要求和選擇的語言,並且有人會爲您完成您的工作。如果你嘗試過這個*,那麼應該在你的問題中展示這個努力,並且你應該解釋它爲什麼不能滿足你的需求。如果它不在你的文章中,它就不存在,據我們所知。 –

回答

1

這是一個很小的任務。使用\K使用一個或多個量詞字符類上的大寫字母匹配:

代碼:

$in='WERTYI67888'; 
var_export(preg_split('/[A-Z]+\K/',$in)); 

輸出:

array (
    0 => 'WERTYI', 
    1 => '67888', 
) 
2

使用preg_match

$keywords = "ABC10000"; 
preg_match("#([a-zA-Z]+)(\d+)#", $keywords, $matches); 
print_r($matches); 

輸出

Array 
(
    [0] => ABC10000 
    [1] => ABC 
    [2] => 10000 
) 
+0

OP不需要全字符串匹配,這就是爲什麼'preg_split()'被請求 – mickmackusa

+0

他問正則表達式,只是爲了替代 – ewwink