将字符串拆分为较小的块

时间:2013-09-25 10:46:33

标签: php

我的长度约为50k。  字符串

的示例

hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl OR hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl OR hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl OR kdjkdjkdjkj OR djdldkkldkkkldklddklkldkl OR jdkdkjdjkjkdjkdjkdjkjkjkjkdkjkdjkjkdjkjk OR hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl hdjhjdhjdhdhjdhjhdldkklkdklkllkldkldldkl kldkldkl OR llldlkdl dkld ldk

现在,如果我使用explode('OR', $str);, 它会给我一个长度为500或超过501的数组。

但我只需要10个数组。最后一个数组可能很长。 有没有人有想法。这该怎么做.. 我需要字符串本身内的OR个字。 我在字符串中也有20k OR

由于

3 个答案:

答案 0 :(得分:3)

str_split($str, strlen($str) / 10);

答案 1 :(得分:2)

这应该有效

explode('OR', $string, 10);

第三个参数是数组中数组的最大数量,最后一个数据项将保留剩余的字符串数。

如果您确实需要字符串中的OR,则应使用@Alix Axel的答案。

答案 2 :(得分:0)

你去(demo):

preg_split('~(?<!\b20k\b) OR\b~', $str, 10);

我建议下次,你清楚地陈述你的整个问题。