私は次の構造の文字列を持っています:
AAA-BBB-CCC or
BBB-CCC or
CCC-DDD
これらの文字列から最初の部分を削除したいと思います。
結果
BBB-CCC
CCC
DDD
「爆発」せずにこれを行うことはできますか?
前もって感謝します !
次のようなものを使用できます。
$str = "AAA-BBB-CCC";
$str2 = explode("-", $str);
array_shift($str2);
$str = implode("-", $str2);
削除する文字が常に4文字ある場合は、このコードを試してください
$string= substr( $your_string, 4 );
文字列の長さが定義されていない場合は、正規表現を使用できます。
$str = "AAA-BBB-CCC";
preg_match('/^.+?-(.+)/', $str, $results);
var_dump($results);
$str = "
AAA-BBB-CCC
BBB-CCC
CCC-DDD
";
$str = preg_replace('/^([A-Z]{3}\-)/m', '', $str);
var_dump($str);
これは機能します。正規表現がサンプルの文字列を超える場合は、フォーマットに合うように正規表現を少し変更するだけです。
最初の部分が常に4文字の場合は、次を使用できます。
$newString = substr($str, 4);