2017-06-13 10 views
-1

正しい正規表現の作成に問題があります。私は、これは1つの以上のパラメータをリンクに追加する必要があると私はそこに疑問符であるかないwheather確定する必要が https://regex101.com/r/d0epRo/2オプションの疑問符 - regexp

:ここに は、私がこれまで持っているものです。したがって、?はオプションですが、動作させることができません。

これらが動作しないもの(\?|)(\?)?(\??)

ものはhttp://www.polskieszlaki.plhttp://www.polskieszlaki.pl/wawel.htmをマークしたが、私は何のfortherアイデアを持っていない

ではありませんする必要があります。助けてください。

+0

"を捕捉しない" という意味)? –

+0

私はそれが遅いと思う – piernik

+0

少なくともあなたはあなたが何をしているのか理解するだろう。あなたの正規表現は混乱しており、あなたが思っていることをしていません。実際の要件を質問に追加してください。 –

答えて

0

は、この正規表現です:

a[\s]+href="[^mailto][\S]+polskieszlaki\.pl(?:(.*))?(?:(\?)(.*))?\" 

この(?:...)おそらくDOMXPathを使うことの最大で([のDOMDocument](http://php.net/manual/en/class.domdocument.php)を使用しないのはなぜ

-1

あなただけのクエリパラメータを試す取得しようとしている場合:

a[\s]+href="[^mailto][\S]+polskieszlaki\.pl(.*)(?:\?(?<param>.*))\" 

あなたはその後、+という名前無視キャプチャグループなしparamグループ

以上の単純な形式でを抽出することができます。

私はあなたが何をしたいと思います
a[\s]+href="[^mailto][\S]+polskieszlaki\.pl(.*)(\?(.*))\"