1

文字列をトークンに分割できる正規表現を作成しようとしています。これは以前は機能していました:

$rawtokens = split("[^-_A-Za-z0-9]+", $string);

ただし、split()は非推奨になりました(preg_splitの使用をお勧めします)。これは機能しません。

$rawtokens = preg_split("[^-_A-Za-z0-9]+", $string);

私が得るエラーは、+\が未知の修飾子であるということです。splitからpreg_splitへの移行で何が変わりましたか?

4

3 に答える 3

2

PCRE正規表現には区切り文字が必要です。

$rawtokens = preg_split("/[^-_A-Za-z0-9]+/", $string);
                         ^               ^
于 2011-10-31T22:58:56.527 に答える
0

をエスケープし-て区切り記号を追加してみてください。

$rawtokens = preg_split("/[^\-_A-Za-z0-9]+/", $string);
于 2011-10-31T23:02:20.253 に答える