2011-01-13 10 views
0

次のURLから「en」を抽出して、書き直すことができます。正規表現を使用して、検索文字列の値を取得します。

接触/ Default.aspxの?LANG = & ID = 1

/contact/default.aspx?id=1111 & /contact/default.aspx?lang=en-us

EN

/C:langは=

エン上記の例は、のように書き換えなければなりませんontact/EN/default.aspxを

正規表現のこのpeiceを使用することができないので、残念ながらIIS7はlookbehindsをサポートしていません:

(?<=lang\=)(.+) 

私は、クエリ文字列の値の一部を一致させることができますどのように任意のアイデア?

おかげ

+0

1を使用するのでしょうか? 'lang'はいつもそこにありますか?それはいつも最後の要素ですか?最後のスラッシュの後に常に 'en'(またはそれにマッチした言語)を挿入したいですか? –

+0

私は正規表現を使用してURLの 'lang ='の後の値を取得したいと考えています。 langはクエリ文字列なので、ページ名のどこにでも置くことができます。 – Fixer

+0

他の3つの質問にも回答できますか?私が興味を持っているのは、いったんあなたがそれを持っていれば、あなたが "en"としたいことです。 –

答えて

1

私は

.*?(&|\?)lang=([^&]+).* 

を行うと、正確に何をしようとするキャプチャグループ

関連する問題