2015-02-24 72 views
0

我有一個字符串:VB.NET Regex.Replace不工作

str = "Liquid Cement Factory, LLC"

和Regex.Replace電話:

System.Text.RegularExpressions.Regex.Replace(str, "[^a-zA-Z0-9/ -]", "")

逗號沒有替換的呼叫後取出被製成。有誰知道爲什麼?我已經嘗試過不同版本的正則表達式,但都沒有工作。這是一個VB.NET的東西?這是逗號嗎?

+0

因爲您的正則表達式不匹配逗號。 – basher 2015-02-24 16:49:29

+0

是否有你在這裏使用正則表達式的原因,而不是簡單得多的['String.Replace'](https://msdn.microsoft.com/en-us/library/bt3szac5%28v=vs.90%29 .aspx)函數? – TZHX 2015-02-24 16:50:34

+0

「^」應該表示一個否定集,因此它應該與該表達式中的其他內容相匹配。如果我錯誤地使用了,請告訴我。我使用的是正則表達式而不是替換,因爲它不僅僅是我想擺脫的逗號,而是那些不在那個正則表達式中的東西。 @basher – user3195786 2015-02-24 16:55:06

回答

0

the_lotus在評論中有答案,我沒有設置字符串等於我的regex.replace調用。該解決方案是簡單地做到這一點:

str = System.Text.RegularExpressions.Regex.Replace(str, "[^a-zA-Z0-9/ -]", "")

東西始終牢記,謝謝。