0
如何刪除字符串中的所有匹配子字符串?例如,如果我有20 40 30 30 30 30,那麼我只有20 40 30(而不是其他30)。我使用正則表達式嗎?如果是這樣,怎麼樣?C#替換字符串中的匹配子字符串
如何刪除字符串中的所有匹配子字符串?例如,如果我有20 40 30 30 30 30,那麼我只有20 40 30(而不是其他30)。我使用正則表達式嗎?如果是這樣,怎麼樣?C#替換字符串中的匹配子字符串
如果這些「子字符串」全部用空格分開,您可以將其拆分,然後採用不同的項目並重新創建字符串。
var str = "20 40 30 30 30 30";
var distinctstr = String.Join(" ", str.Split().Distinct());
我想給你的問題的正確答案是使用替換功能:
string newString = oldString.Replace("30", "");
或
string newString = orldString.Replace(" 30", "");
擺脫空白..的,
編輯只是重讀...我的錯誤。抱歉。沒有意識到你想保留一個'30'。
+1。比我一直這樣做要容易得多。遠遠落在後面......儘管Linq已經存在了一段時間,但我對Linq並沒有做太多的工作,所以我從來沒有聽過Enumerable.Distinct()方法。謝謝! – David 2010-10-24 04:16:55
是的,它們被空格隔開。此外,我不知道Distinct()方法,感謝信息! – david 2010-10-24 04:18:14
@David Stratton:儘可能經常玩LINQ。而且它不一定要只寫查詢。像這樣的事情一樣好。它有助於使集合的工作變得更加簡單。我會說,首先在任何地方都可以使用它,直到您可以很好地使用LINQ來思考代碼。然後,當你瞭解其能力的極限時,你就會知道它是什麼,對它沒有用處。 – 2010-10-24 06:51:17