6

私の正規表現の知識は、これで私を逃れています...

クエリ パラメータとして URI を含む URL があるとします。

http://hostname.com?uri=http://website.com/company/YoYo+&+Co+Inc&type=company

... uri パラメーター自体にパラメーターが含まれていないと仮定すると、Javascript でクエリ パラメーターを手動で解析したいのですが、明らかに、埋め込まれた uri パラメーターのアンパサンドにより、単純にすべてのアンパサンドを分割して実行するよりも難しくなります。そこから。

私が本当にやりたいことは、疑問符とアンパサンドの後に等号が続き、その後に別のアンパサンド (または行末) が続く場合にのみ一致する正規表現を定義することです。私はこれに近づいていますが、非キャプチャテキストも含めていますが、その理由はわかりません:

[?&](?:[^&]+)=

...その結果、一致する?uri=だけでなく、&type=どちらも近いですが、必要以上にキャプチャされます。?マッチでandだけをキャプチャしないように、私は何を間違ってい&ますか? ?つまり、 URI の&前とタイプの前にのみキャプチャする必要があります。

4

1 に答える 1