PHP将字符串分成几部分

时间:2013-06-27 14:32:00

标签: php regex string explode

我有一个字符串$ str,其中包含以下信息

板球击球:印度得分:99/2日期:2013年6月27日

我希望将这个字符串分成4个部分,它应该是这样的:

$part1 = "Cricket";
$part2 = "Batting:India";
$part3 = "Score:99/2";
$part4 = "Date:27 June 2013";

我尝试使用explode(),但问题是值总是不相同。例如,它可能是:

Cricket Batting:South Africa Score:203/10 Date:7 May 2013
or this:
Cricket Batting:Australia Score:1/1 Date:27 September 2019

所以,当我使用爆炸南方和非洲将分裂成不同的变量。我不能使用wordwrap(),因为字符串的长度会不时变化。

2 个答案:

答案 0 :(得分:4)

您可以使用此模式 preg_split

~ (?=Batting|Score|Date)~

答案 1 :(得分:3)

在这种情况下, preg_split 功能是最佳解决方案:

preg_split('/\s(?=\w+:)/ ', $str);

分裂点解释如下:

\s - 匹配一个空格

(?=\w+:) - 匹配单词后跟冒号

的正向前瞻
相关问题