2012-03-25 71 views
2

我有例如字符串:"iCanSeeBluePeople",我需要它由大寫字母並與小寫開始,所以我會收到陣列像["i","Can","See","Blue","People"]PHP的獨立字符串

第一個字它分成數組

琴絃可以像"grandPrix2009" =>["grand","Prix","2009"]"dog" =>["dog"]"aDog" =>["a","Dog"]

我發現這個代碼WH ICH工作正常,但我並不適用於數字而忽略拳頭小寫字母:

<? 
$str="MustangBlueHeadlining"; 

preg_match_all('/[A-Z][^A-Z]*/',$str,$results); 
?> 

感謝您的幫助

+0

不知道這可以用一個正則表達式來完成。你很可能不得不走路。 – dqhendricks 2012-03-25 01:01:11

回答

3

您可以使用正則表達式/[a-z]+|[A-Z]+[a-z]*|[0-9]+/

<? 
    $str="thisIsATestVariableNumber000"; 
    preg_match_all('/[a-z]+|[A-Z]+[a-z]*|[0-9]+/',$str,$results); 
    print_r($results); 
?> 

Result

Array 
(
    [0] => Array 
    (
     [0] => this 
     [1] => Is 
     [2] => ATest 
     [3] => Variable 
     [4] => Number 
     [5] => 000 
    ) 

) 

使用/[a-z]+|[A-Z][a-z]*|[0-9]+/如果你想ATest被分成ATest

<? 
    $str="thisIsATestVariableNumber000"; 
    preg_match_all('/[a-z]+|[A-Z][a-z]*|[0-9]+/',$str,$results); 
    print_r($results); 
?> 

Result

Array 
(
    [0] => Array 
    (
     [0] => this 
     [1] => Is 
     [2] => A 
     [3] => Test 
     [4] => Variable 
     [5] => Number 
     [6] => 000 
    ) 

) 
+0

我忘記提到這個字符串:「letItBeANiceCar」。有你的正則表達式不包括的 – simPod 2012-03-25 01:32:46

+0

@simPod - 你想得到什麼結果:「letItBeANiceCar」?它是[this](http://ideone.com/x9pWu)(第一個正則表達式)或[this](http://ideone.com/XYena)(第二個正則表達式)。 – sch 2012-03-25 01:39:21

+0

第二個。非常感謝您辛苦的答覆。它的作用像魅力 – simPod 2012-03-25 02:18:04