私は基本的に発信URLマッチャーを作成しようとしています。そのため、HTMLを含むストリームをCDNを参照するように置き換えることができます。私は圧縮を使用しているのでIIS URL書き換えモジュールを使用できません。私は現在、特定のファイルタイプのIE用のサブフォルダに一致する正規表現正規表現と一致するURLはサブフォルダで
Regex ASSET_PATH = new Regex(@"(?i)assets/([A-Za-z0-9\-_/.]+)\.(jpg|jpeg|bmp|tiff|png|gif|js|css|mov|mp4|ogg|avi|mp3)", RegexOptions.Compiled | RegexOptions.CultureInvariant | RegexOptions.IgnoreCase);
これは素晴らしい作品と私はその時点から文字列には何も操作することができます(つまり、以降「資産/」からを持っています右 )。私が達成する必要があるのは、フォーマットを必ずしも知らなくても、 "assets /"サブフォルダの左にある文字列を操作することです。 CSS /インラインスタイルで
<img src="./assets/123/pig.jpg" />
<img src="http://mysite.blah/assets/123/pig.jpg" />
<img src="http://www.mysite.blah/assets/123/pig.jpg" />
<img src='assets/123/pig.jpg' />
:ここではいくつかの例であり、とにかく
background-image : URL('assets/123/pig.jpg')
background-image : URL(http://www.mysite.blah/assets/123/pig.jpg)
が、私はあなたが画像を取得すると思います。私は本質的に、URLの論理的な始点を見つけてそこから操作して自分のCDNを指すことができるまで、「資産」という言葉の「左」を見ることができるようにしたい。
私は、これは正規表現で可能であるか分からないので、正規表現/ C#/ HTML敏捷性パックの組み合わせを使用して、任意の提案は歓迎されている
'RegexOptions.IgnoreCase'を2回書いています。それは何も解決しません、それはちょうどバグ私.. – Olian04
私はあなたを理解するか分からない。 [this](https://regex101.com/r/IwHWCJ/1)のような意味ですか? – Olian04
@ Olian04 - ちょうどタイプミス(RegexOptions.IgnoreCase)ですが、おそらく私はあなたをいつもバグに残すべきです... LOL :-) –