簡體   English   中英

將URL參數字符串轉換為路徑的正則表達式

[英]Regular expression to convert url parameter string into path

需要正則表達式更改為url以下

abc.aspx?str=blue+lagoon&id=1234 

/blog/blue-lagoon/

在perl中:

my $work_url = $original_url; 
$work_url =~ s/\+/-/g;
$url = '/blog/' . do { $work_url =~ m/\bstr=([\w\-]+)\b/; $1} . '/';

適用於給定的示例。

受Ragepotato啟發:

$new_url = '/blog/'
    . sub { local $_ = shift; tr/+/-/; m/\bstr=([\w\-]+)\b/; $1 }->($orig_url)
    . '/';

對於Ragepotatos帖子,更嚴格,不太貪婪的正則表達式未經測試:

Regex.Match(input.Replace("+", "-"),@"\bstr=(.*?)&").Groups[1].Value

C#.NET

string input = "abc.aspx?str=blue+lagoon&id=1234";

string output = "/blogs/" + Regex.Match(input.Replace("+", "-"),@"str=(.*)&").Groups[1].Value + "/";

暫無
暫無

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

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