字符串替换不适用于某些俄语字符
String replace isn't working for some russian characters
出于某种原因,我需要将俄语字母“Ё”替换为“Е”。所以我写了这个简单的代码
someString = someString.toLowerCase().replace("ё", "е");
它在模拟器和我的大多数设备上都运行良好,小米 Redmi 9a 除外。该应用完全没有取代小米上的“ё”。
有什么问题吗?
小米红米9a用的不是俄文字母“Ё”,而是“È”! :) 这是带有分音符的拉丁字母“E”。不知道是键盘问题还是其他原因
所以我们需要将代码改成这样
// The first character of pattern is russian Ё, the second is latin E with diaeresis.
// Some Xiaomi devices use the second variant instead of russian letter
someString = someString.toLowerCase().replaceAll("[ёë]", "е");
或这个
someString = someString.toLowerCase().replace("ё", "е").replace("ë", "е");
出于某种原因,我需要将俄语字母“Ё”替换为“Е”。所以我写了这个简单的代码
someString = someString.toLowerCase().replace("ё", "е");
它在模拟器和我的大多数设备上都运行良好,小米 Redmi 9a 除外。该应用完全没有取代小米上的“ё”。
有什么问题吗?
小米红米9a用的不是俄文字母“Ё”,而是“È”! :) 这是带有分音符的拉丁字母“E”。不知道是键盘问题还是其他原因
所以我们需要将代码改成这样
// The first character of pattern is russian Ё, the second is latin E with diaeresis.
// Some Xiaomi devices use the second variant instead of russian letter
someString = someString.toLowerCase().replaceAll("[ёë]", "е");
或这个
someString = someString.toLowerCase().replace("ё", "е").replace("ë", "е");