2 回答

TA貢獻1831條經驗 獲得超10個贊
問題是您的數據源具有\u2265as astring并且沒有將其視為char. 如果你string用一個char版本替換這個版本,你會得到你需要的。
data = data.Replace("\\u2265", '\u2265'.ToString());
的原因ToString()是我們可以使用適當的重載Replace。
@Flydog57 提供的更簡單的版本:
data = data.Replace("\\u2265", "\u2265");
受@Jimi 啟發的通用版本:
Regex r = new Regex(@"\\u[0-9]{4}");
var matches = r.Matches(data);
var uniqueMatches = matches
.OfType<Match>()
.Select(m => m.Value)
.Distinct();
foreach (var m in uniqueMatches)
{
data = data.Replace(m,Regex.Unescape(m));
}

TA貢獻1865條經驗 獲得超7個贊
另一種更通用的選擇(但并不總是適用,它可能會干擾字符串內容)是使用Regex.Unescape()對字符串進行轉義:
string myString = "\\u2265" + "20180426";
myString = Regex.Unescape(myString);
將打印
≥20180426
- 2 回答
- 0 關注
- 201 瀏覽
添加回答
舉報