第二个空格后拆分字符串 - PHP

时间:2016-08-01 23:47:53

标签: php regex

我想分割这个字符串:

Womens Team Ranking Round

在两个但仅在第二个空格之后,例如,它应该是这样的:

Womens Team

Ranking Round

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

按照要求回答问题,这将为您提供两个字符串,包括在第二个空格划分的原始字符串:

$strings = preg_split ('/ /', 'Womens Team Ranking Round', 3);
$second=array_pop($strings);
$first=implode(" ", $strings);

如果要拆分一个或多个空格,请使用/ +/作为模式。

您也可以使用单个正则表达式执行此操作:

$string='Womens Team Ranking Round';
preg_match('/^([^ ]+ +[^ ]+) +(.*)$/', $string, $matches);

这将为您提供$matches[1]中的前两个单词以及$matches[2]中字符串的其余部分。

回答一个比问题更复杂的问题:如果你想每两个单词打破一个更长的字符串,那么你可以从preg_split删除最后一个参数,然后在循环中使用array_slice来重新一次加入两个数组的成员。

回答一个实际上根本没有问过的问题,但可能是这样一个问题的原因:不要忘记wordwrap