2015-07-12 85 views
0

我正在尋找一個C#正則表達式替換借此:C#正則表達式 - 需要刪除括號

HP06B66F (HP Officejet Pro 8600) (redirected 4)

HP06B66F (HP Officejet Pro 8600)

我使用下面的正則表達式和它讓我到HP06B66F (HP Officejet Pro 8600)()

(redirected \\d*)

我需要去除它最後的()而不僅僅是介於兩者之間的內容。

感謝您的幫助

+0

沒有你想要的如果輸入是'HP06B66F(HP Officejet Pro 8600)(foo bar)',則使用正則表達式替換? –

回答

0

您正則表達式更改爲"\(redirected \d*\)"治療()作爲普通字符。

(在這取決於你怎麼做這個C#它可能是\\(and \\)因爲你必須先處理字符串的轉義字符),爲什麼你需要的正則表達式是

+0

這工作,我不得不使用轉義字符。謝謝! – zachary

2

?你可以這樣說:

string initialString = "HP06B66F (HP Officejet Pro 8600) (redirected 4)"; 
string wantedString = initialString.Remove(initialString.LastIndexOf("(")).TrimEnd(); 

結果:

Result image

您也可以嘗試與任何這些,都給予同樣的結果:

string wantedString = initialString.Replace(" (redirected 4)", ""); 
string wantedString = Regex.Replace(initialString, @"\(redirected \d*\)", "").TrimEnd();