簡體   English   中英

僅使用正則表達式替換網址中的語言環境名稱(無字符串最后一個索引)

[英]Replace locale name in url using regex only(no string last index of)

我具有以下結構www.foo.com/ bar的 url方案設置

為了選擇特定於語言環境的頁面(欄),用戶可以從下拉菜單中選擇不同的值,這會將語言環境代碼附加到url上,例如:

www.foo.com/en/ bar

www.foo.com/za/ 酒吧

如何在豎杠之前使用正則表達式替換url值以包含正確的語言環境? 我有以下替換部分起作用,但如果我繼續選擇diff vale,則繼續多次追加區域設置代碼,如下所示:

www.foo.com/za/bar

www.foo.com/za/en/bar

string referer = Request.Headers["Referer"].ToString();
string url = Regex.Replace(referer, Request.Host.ToString(), $"{Request.Host.ToString()}/{lang}");
return Redirect(url);

設法使其使用

string url = Regex.Replace(referer, @".*\/", $"{Request.Scheme}://{Request.Host.ToString()}/{lang}/");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM