4

として$test = 'aa,bb,cc,dd,ee'の文字列と としての他の文字列があり$match='cc'ます。として結果が欲しいです$result='aa,bb,dd,ee'。どのPHP関数が目的の出力を提供できるかわからないため、目的の結果を得ることができません。

また、文字列 as$test = 'aa,bb,cc,dd,ee'と他の文字列as がある場合$match='cc'。として結果が欲しいです$match=''。つまり、 $testで$matchが見つかった場合、$match値をスキップできます

どんな助けでも本当に感謝します。

4

4 に答える 4

6

あなたは試すことができます:

$test   = 'aa,bb,cc,dd,ee';
$match  = 'cc';

$output = trim(str_replace(',,', ',', str_replace($match, '', $test), ','));

また:

$testArr = explode(',', $test);
if(($key = array_search($match, $testArr)) !== false) {
  unset($testArr[$key]);
}
$output  = implode(',', $testArr);
于 2013-08-28T06:59:05.647 に答える
3

試してみてくださいpreg_replace

$test = 'aa,bb,cc,dd,ee';

$match ='cc';

echo $new = preg_replace('/'.$match.',|,'.$match.'$/', '', $test);

出力

aa,bb,dd,ee
于 2013-08-28T06:58:11.397 に答える
0
 $test = 'aa,bb,cc,dd,ee';
 $match='cc';
echo trim(str_replace(',,', ',' , str_replace($match,'',$test)),',');

デモ

于 2013-08-28T07:02:50.643 に答える