[英]regex.replace c# diacritics
我正在嘗試用變音符號替換字符串,但是沒有運氣。 我需要用自己的表替換例如“Ю”和“ю”替換為“ yu”,“Б”和“б”替換為“ b”等。 我有這樣的代碼,這是行不通的:
case "LastRUEN":
if (csentry["LAST"].IsPresent)
{
string FIELD_RU = csentry["LAST"].Value;
string FIELD_EN;
FIELD_EN = Regex.Replace(FIELD_RU, "[Аа]", "a");
FIELD_EN = Regex.Replace(FIELD_RU, "[Бб]", "b");
FIELD_EN = Regex.Replace(FIELD_RU, "[Вв]", "v");
FIELD_EN = Regex.Replace(FIELD_RU, "[Гг]", "h");
FIELD_EN = Regex.Replace(FIELD_RU, "[Ґґ]", "g");
FIELD_EN = Regex.Replace(FIELD_RU, "[Дд]", "d");
FIELD_EN = Regex.Replace(FIELD_RU, "[Ее]", "e");
mventry["lastNameEN"].Value = FIELD_EN;
}
break;
有人可以幫助進行故障排除嗎? 也許對我的情況使用一種方法會更好? 謝謝!
這應該更好地工作,因為Replace
調用的結果將是下一個操作的輸入。
case "LastRUEN":
if (csentry["LAST"].IsPresent)
{
string FIELD_RU = csentry["LAST"].Value;
string FIELD_EN;
FIELD_EN = Regex.Replace(FIELD_RU, "[Аа]", "a");
FIELD_EN = Regex.Replace(FIELD_EN , "[Бб]", "b");
FIELD_EN = Regex.Replace(FIELD_EN , "[Вв]", "v");
FIELD_EN = Regex.Replace(FIELD_EN , "[Гг]", "h");
FIELD_EN = Regex.Replace(FIELD_EN , "[Ґґ]", "g");
FIELD_EN = Regex.Replace(FIELD_EN , "[Дд]", "d");
FIELD_EN = Regex.Replace(FIELD_EN , "[Ее]", "e");
mventry["lastNameEN"].Value = FIELD_EN;
}
break;
當然,您應該將操作移到單獨的方法中。
編輯: 替換字符串中的多個字符正在插入以合並多個調用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.