减少这个巨大的字符串(php)
我有下面的绳子,需要把它切成碎片。但如何才能做到这一点呢 字符串:减少这个巨大的字符串(php),php,string,query-string,Php,String,Query String,我有下面的绳子,需要把它切成碎片。但如何才能做到这一点呢 字符串:$sting=0NL1000014394701923000149447456,…,10450143947022 …意味着这里可以有更多的NR 现在我想把这根弦分成以下几部分: $first包含字符串中的第一个nr或字母。所以在这种情况下,它应该是:0 $second包含字符串中的第二个和第三个NR或字母。所以在这种情况下,它应该是:nl $third包含字符串中第三个nr或字母之后的所有内容。所以在这种情况下,它应该是:10000
$sting=0NL1000014394701923000149447456,…,10450143947022
…
意味着这里可以有更多的NR
现在我想把这根弦分成以下几部分:
$first
包含字符串中的第一个nr或字母。所以在这种情况下,它应该是:0
$second
包含字符串中的第二个和第三个NR或字母。所以在这种情况下,它应该是:nl
$third
包含字符串中第三个nr或字母之后的所有内容。所以在这种情况下,它应该是:1000014394701923000149447456,…,10450143947022
$fourth
包含字符串中最后一个,
之后的所有内容。注:此nr可以大于或小于此示例中的数值。所以在这种情况下,它应该是:10450143947022
希望这是可能的
好心的问候正则表达式应该可以做到这一点,这里有一些东西可以让你开始
preg_match("/^(\d+)([a-z]+)(.*?,([^,]*))$/i", $string, $m);
print_r($m);
请看这里:
使用简单的regexp
([0-9A-Za-z]{1})([0-9A-Za-z]{2})(.*)\,([^\,]+)$
应该有用。在PHP中,这就像
$string = "0nl10000143947019,23000143947456,23000143947456,10450143947022";
preg_match("@([0-9A-Za-z]{1})([0-9A-Za-z]{2})(.*)\,([^\,]+)$@i", $string, $matches);
// map $matches to the right variables. But you can do that yourself :-)
请尝试以下操作:
$first = substr($sting,0,1);
$second = substr($sting,1,2);
$third = substr($sting,3);
$fourth = end(explode(',',$sting));
预期的输出是什么?对于这一个,它很简单,工作起来很有魅力。谢谢大家!