English 中文(简体)
如何替代 com被限定的扼杀?
原标题:How to get substring of comma delimited string?

I have a comma delimited string and want the first 100 entries (not including the 100th comma) as a single string.

例如,如果我有扼杀性的话。

a,b,c,d,e,f,g

问题在于头3个条目,预期结果将加以说明。

a,b,c
最佳回答

利用探索/简化:

$str     =  a,b,c,d,e,f,g ;
$temp1   = explode( , ,$str);
$temp2   = array_slice($temp1, 0, 3);
$new_str = implode( , , $temp2);

采用:

$new_str = preg_replace( /^((?:[^,]+,){2}[^,]+).*$/ , 1 ,$str);
问题回答

网址:explode()功能。

$string_array = explode(",",$string);

• 通过阵列获取你想要的价值观:

for($i = 0; $i < sizeof($string_array); $i++)
{
echo $string_array[$i];//display values
}

您可以找到第100条定义:

$delimiter =  , ;
$count = 100;
$offset = 0;
while((FALSE !== ($r = strpos($subject, $delimiter, $offset))) && $count--)
{
    $offset = $r + !!$count;
}
echo substr($subject, 0, $offset), "
";

或以类似方式表示:

$delimiter =  , ;
$count = 100;
$len = 0;
$tok = strtok($subject, $delimiter);
while($tok !== FALSE && $count--)
{
    $len += strlen($tok) + !!$count;
    $tok = strtok($delimiter);
}
echo substr($subject, 0, $len), "
";

One way is to split the string after a comma and put the first 100 indexes together (comma-separated). Before this you have to check if count(array) is greater or smaller than 100.





相关问题
Simple JAVA: Password Verifier problem

I have a simple problem that says: A password for xyz corporation is supposed to be 6 characters long and made up of a combination of letters and digits. Write a program fragment to read in a string ...

Case insensitive comparison of strings in shell script

The == operator is used to compare two strings in shell script. However, I want to compare two strings ignoring case, how can it be done? Is there any standard command for this?

Trying to split by two delimiters and it doesn t work - C

I wrote below code to readin line by line from stdin ex. city=Boston;city=New York;city=Chicago and then split each line by ; delimiter and print each record. Then in yet another loop I try to ...

String initialization with pair of iterators

I m trying to initialize string with iterators and something like this works: ifstream fin("tmp.txt"); istream_iterator<char> in_i(fin), eos; //here eos is 1 over the end string s(in_i, ...

break a string in parts

I have a string "pc1|pc2|pc3|" I want to get each word on different line like: pc1 pc2 pc3 I need to do this in C#... any suggestions??

Quick padding of a string in Delphi

I was trying to speed up a certain routine in an application, and my profiler, AQTime, identified one method in particular as a bottleneck. The method has been with us for years, and is part of a "...

热门标签