文字列を「トークン」に分割するために、次のことに遭遇しました。
$tokens = preg_split("/[^\-_A-Za-z0-9]+/", $string);
これがこれとどう違うのか誰か説明してくれませんか:
$tokens = explode(' ', $string);
どんな助けでも大歓迎です:-)
文字列を「トークン」に分割するために、次のことに遭遇しました。
$tokens = preg_split("/[^\-_A-Za-z0-9]+/", $string);
これがこれとどう違うのか誰か説明してくれませんか:
$tokens = explode(' ', $string);
どんな助けでも大歓迎です:-)
あなたが提供した正規表現:
$tokens = preg_split("/[^\-_A-Za-z0-9]+/", $string);
ダッシュ(-)、アンダースコア(_)、文字(小文字または大文字)、または数字ではない区切り文字を使用して、入力文字列をトークンに分割します。
一方:
$tokens = explode(' ', $string);
区切り文字として空白を使用して、文字列をトークンに分割するだけです。
の文字通りの読み[^\-_A-Za-z0-9]+
は次のとおりです。
-
または_
、または文字AからZ(大文字かどうか)または数字ではない1つ以上の個々の文字に一致します。
preg_split
上記との一致に基づいて入力を分割しますがexplode
、空白文字でのみ分割します。preg_split
分割されるが分割されない正規表現から除外されていない他の文字があるexplode
ため、結果の配列は異なる可能性があります。