我有一百万个字符的文本行,我的PART2就在文本行的中间,即500个字符 'PART2'之前的字符和'PART2'之后的500个因此字符我的问题是如何从'PART2'开始str_split。在文本行中 例子
`5_hundred_thusands_text_charactersPART2fivehundredthusandstextcharactersagain`
str_split后的结果输出应该从'PART2'开始 'fivehundre','dthusandte','xtcharacte' 这些我的代码:
$txt = "5_hundred_thusands_text_charactersPART2fivehundredthusandstextcharactersagain";
if(preg_match('/(START)/i', $txt)) {
#start from there
$see = str_split($txt, 10);
echo " ','$see";
}
我的这个代码的结果只是从开始我可以在PHP中真正实现这一点吗?感谢您在我的解决方案中阅读和影响
答案 0 :(得分:1)
您可以使用preg_split
使用以下解决方案:
$txt = "5_hundred_thusands_text_charactersPART2fivehundredthusandstextcharactersagain";
$arrParts = preg_split("/PART2/", $txt);
$arrSplitItems = str_split($arrParts[1], 10);
echo implode(',', $arrSplitItems);
注意:您也可以使用preg_split
:
explode
$arrParts = explode('PART2', $txt);
答案 1 :(得分:0)
我使用爆炸它实际上比preg_split快,并且你不需要正则表达式,因为你确切知道分隔符是什么。
$txt = "5_hundred_thusands_text_charactersPART2fivehundredthusandstextcharactersagain";
$r = explode("PART2", $txt);
$see = str_split($r[1], 10);
print_r($see);