2016-07-19 20 views
1

私は/ paradhesesをキャプチャしたいと思っているものをキャプチャできません... /hodsakers/marsh-zwartArray/dで検索していて、marsh-zwartArrayをキャプチャしたいが最後に/私が探しているものに存在する。 私は検索してみてください多くのことを= /のように:最後のバックスラッシュは、そうでない存在しない場合php regexキャプチャparantheses

(marshall[\s\S]*)\/ 

それは動作しますが。 私も反対だ。この場合、

(marsh[\s\S]*)(\/)? 

を試してみてください、それはので、私は知らない1がある場合、それはすべての文字列を取得し、何も=/ をキャプチャしませんもう、最後のバックスラッシュなしで動作しなくあなたの助けのために私は両方のケースでキャプチャすることができますどのように=/ おかげ

+2

おそらく '/ marsh [^ \ /] * /'だけで十分です。 –

+0

'marsh *'のすべての出現と一致しますか? 例えば、上記の例の場合、次のような場合は2回一致します。/ hodsakers/marsh-zwartArray/whatevermarsh – 3p3ch3

答えて

2

あなたは0+ /以外の文字を一致させるために[^\/]*否定文字クラスを使用することがあります。

/marsh[^\/]*/ 

regex demo

+0

ありがとう、それは否定された文字であり、問​​題は解決されました – akio