2014-10-18 41 views
0

我有一個看起來像這樣的自定義標籤:C#正則表達式:標籤用於錨鏈接

[document:13]text[document] 

[item:2]texttext[item] 

的和是id:之前是type

所以我想要做的是,一個字符串中的所有這些標籤將被替換。

第一行都會被替換成<a href="example.com/document?id=13">text</a>

我目前正試圖Regex.Match然而id是一個變量,可以是任何東西,這就是我在哪裏卡住了。

乾杯! :)

+0

會是怎樣的輸出第二個? – 2014-10-18 12:59:24

回答

0

你需要像這樣

\[(\w+):(\d+)\]([^]]+)\[\1\] 

而且隨着

<a href="example.com/$1?id=$2">$3</a> 

DEMO

+0

謝謝! :)你們在哪裏學習這些表情?總是有困難與他們 – Caresi 2014-10-18 13:15:51

+0

@ user3194181主要回答在這裏,我發現'regexr.com'是有幫助的:) – 2014-10-18 13:18:12

0

這種取代將工作在C#

var input = "[document:13]text[document]"; 
var output = Regex.Replace(input, @"\[(\w+):(\d+)\]([^\[]+)\[\1\]", @"<a href=""example.com/$1?id=$2"">$3</a>");