[PHP-users 1316] Re: 任意の空白文字をトークンの区切り文字に指定する方法

Ryuzi Kambe php-users@php.gr.jp
Tue, 21 Aug 2001 10:41:08 +0900


On Fri, 17 Aug 2001 16:07:38 +0900
Ryo Fujita <rio@bd.wakwak.com> wrote:

> りお@absoluteright.netです。
> 
> Ryuzi Kambeさんが8/17/01 3:58 PMに書きました:
> >$input = "This is a
> >pen";
> >
> >などのように、改行が間に挟まっている場合にはこれを
> >トークンとみなしてくれません。
> 
> split()じゃダメですか?

なるほど、正規表現を使えと言うことですか。
splitは使い方がよくわからなかったので、
Perl互換のpreg_splitを使いました。

空白文字
\s
が1個
/\s/
或いは+0個以上続く時にそれを区切り文字にしたいということで、

/\s[\s]*/
(空白文字+[空白文字]×0以上)

$input = "This is a pen.";
$tok = preg_split("/\s[\s]*/",$input);

でできました。
(\はLinuxではバックスラッシュで記述しています)

結果は書くまでもないですが、

$tok[0] = This
$tok[1] = is 
$tok[2] = a
$tok[3] = pen.

でした。

Ryuzi Kambe
kambe@mc.kcom.ne.jp