9

preg_split に使用している次の分割関数を変換したかったのですが、値が時々変わるため、少し混乱しています...

現在のコード:

$root_dir = 'www';
$current_dir = 'D:/Projects/job.com/www/www/path/source';
$array = split('www', 'D:/Projects/job.com/www/www/path/source', 2);
print_r($array);

分割関数の出力:

Array ( [0] => D:/Projects/job.com/ [1] => /www/path/source )
4

1 に答える 1

21

preg_split() は古い ereg 関数 split() に似ています。/.../次のように正規表現を囲むだけです。

preg_split('/www/', 'D:/Projects/job.com/www/www/path/source', 2);

ここで囲んでいるスラッシュ/は、実際には正規表現構文の一部であり、文字列内で検索されるわけではありません。デリミタが可変の場合はwww、さらに内部に preg_quote() を使用する必要があります。

ただし、とにかく静的文字列のみを探す場合は、正規表現は必要ないことに注意してください。そのような場合、explode()以前に使用した split() とほとんど同じように使用できます。

explode('www', 'D:/Projects/job.com/www/www/path/source', 2);
于 2011-01-19T12:39:46.100 に答える