1

この正規表現を変更するにはどうすればよいですか?

preg_match_all('/\[startstring\](.*?)\[endstring\]/s', $input, $matches);

@の代わりに[startstring]、そして?;の代わりに探す[endstring]

私がこれを試すとき:

preg_match_all('/\@\(.*?)\=(.*?)\;\/s', $input, $matches);

動作しません。:(それはのようなものを言いますNo ending delimiter '/' found in /home/content/76/7290476/html/newr.php on line 3

4

1 に答える 1

2

何らかの理由で最後のバックスラッシュを回避しました。あなたはまた逃げています@、そして;それは不必要です:

#@(.*?)=(.*?);#s

スラッシュを区切り文字として使用する必要はありません(上記で使用しました#)。エスケープしてはいけない文字に注意してください。あなたもその最初の親を逃れるつもりはなかったと思います。

于 2013-01-14T03:48:07.217 に答える