0

PHPの初心者。次のコードが表示されます。

$foods = array("pasta", "steak", "fish", "potatoes");
// find elements beginning with "p", followed by one or more letters.
$p_foods = preg_grep("/p(\w+)/", $foods);

関数、p、$foods.... '(\w+)/", '.

(\w)/ が何をするのかわかりません。スイッチだと思います。それは何をするためのものか?私は本を​​手に入れるべきですか、それとももっと読んだり、もっと調べたりするべきですか? マニュアルでは、このようなコードにスイッチが表示されます。これに関する詳細情報はどこにありますか?

4

1 に答える 1

0

\w はすべての文字に一致する修飾子で、+ は「1 つ以上」を意味します

このような修飾子について詳しくは、http ://www.php.net/manual/regexp.reference.escape.php をご覧ください。

長い答え:

/p(\w+)/

/ - オープン区切り文字は正規表現の開始を意味します

p - 一致する文字のみ

() - 中括弧はサブパターンを意味しますが、あなたの場合は意味がありません

\w - 任意の「単語」文字を意味します

+ は「1 つ以上」を意味します (「?」 — 「1 つまたはなし」または「*」 — 「なしまたはすべて」のいずれか)

/ - 終了デリミタは正規表現の終わりを意味します

于 2013-10-02T21:36:49.693 に答える