0

我有一个这样的字符串:

1. Zentrallager # TF Schrankwandp (u) -EG- 2. ASH 25 # TF silentglider (u) WS 3. Gutinedu # TF ottomatic 4. Deep Space Three # TF Kleissi1978 F & P 5. crafted by trapper12 # TF trapper12 VR 6. -8- # TF Mrs-Shooter (u) -=SC=- 7. 8. Standard Libelle # TF silentglider (u) WS 9. crafted by phiLLLdd # TF phiLLLdd -=SC=- 10. V8 Vote111 (u) 3R 11. Nimbus # TF silentglider (u) WS 12. Speed Astir # TF silentglider (u) WS 13. I Want My Tears Back # TF KlappstuhI (u) ReX 14. RK-Weporinag # TF ImperatorMar (gu) -=SC=- 15. RK-Hohoieugo # TF -sledge- (gu) > TdE < 16. Oununu # TF Xantros 

我需要“1”之间的值。和“2”。和“2”。和“3”。…………

我的尝试看起来像这样:

for($i=1;$i<16;$i++){ // I know there are ever 16 counts
     $j = $i+1;
     $regex = "/$i\. (.*) $j\./";
     preg_match_all($regex, strval($string),$matches);}

我的结果每次都是空的。匹配数为 0。为什么?

该变量绝对是一个字符串,并且正则表达式在一些在线测试人员中是有效的,但在我的脚本中却不是。

4

1 回答 1

2

怎么样:

$arr=preg_split ("/[\d|\d\d]\./", $yourstring)

现在 $arr[n] 将包含字符串的 n+1 部分

于 2012-09-03T07:44:20.720 回答