2017-08-18 40 views
0

的一部分,我有這樣的文字:置換組包括其他組

<ITEM>PART 23 <span class='sub'>m1</span>, 
<ITEM>PART 49b 
; 

我所要的輸出是:

<b>PART 23 </b><span class='sub'>m1</span>, <b>PART 49b</b>; 

我使用這個模式:<ITEM>(.*?)(?=<|\n|$) 導致此:

<b>PART 23 </b><span class='sub'>m1</span>, 
<b>PART 49b</b> 
; 

(公告分號)

如果更改圖案以這樣的:<ITEM>(.*?)(<|\n|$) 的輸出將是這樣的:

<b>PART 23 </b>span class='sub'>m1</span>, 
<b>PART 49b</b>; 

(請注意在span>

丟失 <

我錯過了什麼?

+1

在之前有人鏈接到bobince答案。 – Will

+0

讓我做榮譽。 https://stackoverflow.com/a/1732454/302248 – Sach

+1

預計。下一次,我將刪除標籤並放置其他字符,因爲顯然,在正則表達式問題中看到一個html標籤會帶來該鏈接。即使與問題沒有遠程相關。 – Cornwell

回答

1

這似乎與你的有限樣本的工作:

var match = @"<ITEM>([^<\n]+)\n?"; 
var replace = @"<b>$1</b>"; 

var ans = Regex.Replace(src, match, replace);