convertWithoutTone static method
将带声调格式的拼音转换为不带声调格式的拼音 @param pinyinArrayStr 带声调格式的拼音 @return 不带声调的拼音
Implementation
static List<String> convertWithoutTone(String pinyinArrayStr) {
List<String> pinyinArray;
for (int i = allMarkedVowel.length - 1; i >= 0; i--) {
int originalChar = allMarkedVowel.codeUnitAt(i);
double index = (i - i % 4) / 4;
int replaceChar = allUnmarkedVowel.codeUnitAt(index.toInt());
pinyinArrayStr = pinyinArrayStr.replaceAll(
String.fromCharCode(originalChar), String.fromCharCode(replaceChar));
}
// 将拼音中的ü替换为v
pinyinArray = pinyinArrayStr.replaceAll("ü", "v").split(pinyinSeparator);
// 去掉声调后的拼音可能存在重复,做去重处理
LinkedHashSet<String> pinyinSet = LinkedHashSet<String>();
pinyinArray.forEach((value) {
pinyinSet.add(value);
});
return pinyinSet.toList();
}