Membernumber350005Calculationdate04/08/2015Casenumber880898Case0.12Amount546.3Fors
這裏是一個包含單詞和數字(包括日期和小數格式)的字符串,它們之間沒有空格。我想給詞和數字之間留出空間。我的輸出應該是一個字符串不是一個數組,這應該是這樣..使用RegEx替換函數(C#)在字符串中提供空格字符和數字之間的空格
Membernumber 350005 Calculationdate 04/08/2015 Casenumber 880898 Case 0.12 Amount 546.3 Fors
我嘗試下面的代碼。我成功地過濾了日期和小數格式,並給他們留下了空間。但我被困在爲這些單詞提供空間。
string s = "Membernumber350005Calculationdate04/08/2015Casenumber880898Case0.12Amount546.3Fors";
string SpaceAroundDate = Regex.Replace(s, @"(\d+/\d+/\d+)", @" $1 ");
string SpaceAroundDecimal = Regex.Replace(SpaceAroundDate, @"(\d+\.\d+)", @" $1 ");
有了這個代碼,我可以做這個,
Membernumber35000520Calculationdate 04/08/2015 Casenumber880898Case 0.12 Amount 546.3 fors
然後我寫了這個給文字和數字之間的空間,
string SpaceAroundWord = Regex.Replace(SpaceAroundDecimal, @"([A-Za-z]\w+)([0-9]\d+)([A-Za-z]\w+)", @"$1 $2 $3");
但事實並非如此工作。希望我已經提供了足夠的信息。提前致謝。
如果沒有混合格式的日期和浮筒,你可以試試'Regex.Replace(S,@「\ d {2}/\ d {2}/\ d {4} | \ d +(?:\。\ d +)?「,」$&「)'。 [Demo here](http://regexstorm.net/tester?p=%5cd%7b2%7d%2f%5cd%7b2%7d%2f%5cd%7b4%7d%7c%5cd%2b(%3f%3a %5c所示。%5CD%2b)的%3F與I = Membernumber350005Calculationdate04%2f08%2f2015Casenumber880898Case0.12Amount546.3Fors&R = +%24%26 +)。 –