LMCoreNS // Ensure dictionary data type in cnvPhonabetToASCII(), etc.
This commit is contained in:
parent
80e578600c
commit
73560d1ab6
|
@ -148,15 +148,9 @@ extension vChewingLM {
|
||||||
/// - parameters:
|
/// - parameters:
|
||||||
/// - incoming: 傳入的未加密注音讀音字串。
|
/// - incoming: 傳入的未加密注音讀音字串。
|
||||||
func cnvPhonabetToASCII(_ incoming: String) -> String {
|
func cnvPhonabetToASCII(_ incoming: String) -> String {
|
||||||
let dicPhonabet2ASCII = [
|
|
||||||
"ㄅ": "b", "ㄆ": "p", "ㄇ": "m", "ㄈ": "f", "ㄉ": "d", "ㄊ": "t", "ㄋ": "n", "ㄌ": "l", "ㄍ": "g", "ㄎ": "k", "ㄏ": "h",
|
|
||||||
"ㄐ": "j", "ㄑ": "q", "ㄒ": "x", "ㄓ": "Z", "ㄔ": "C", "ㄕ": "S", "ㄖ": "r", "ㄗ": "z", "ㄘ": "c", "ㄙ": "s", "ㄧ": "i",
|
|
||||||
"ㄨ": "u", "ㄩ": "v", "ㄚ": "a", "ㄛ": "o", "ㄜ": "e", "ㄝ": "E", "ㄞ": "B", "ㄟ": "P", "ㄠ": "M", "ㄡ": "F", "ㄢ": "D",
|
|
||||||
"ㄣ": "T", "ㄤ": "N", "ㄥ": "L", "ㄦ": "R", "ˊ": "2", "ˇ": "3", "ˋ": "4", "˙": "5",
|
|
||||||
]
|
|
||||||
var strOutput = incoming
|
var strOutput = incoming
|
||||||
if !strOutput.contains("_") {
|
if !strOutput.contains("_") {
|
||||||
for entry in dicPhonabet2ASCII {
|
for entry in Self.dicPhonabet2ASCII {
|
||||||
strOutput = strOutput.replacingOccurrences(of: entry.key, with: entry.value)
|
strOutput = strOutput.replacingOccurrences(of: entry.key, with: entry.value)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -169,20 +163,29 @@ extension vChewingLM {
|
||||||
/// - parameters:
|
/// - parameters:
|
||||||
/// - incoming: 傳入的已加密注音讀音字串。
|
/// - incoming: 傳入的已加密注音讀音字串。
|
||||||
func restorePhonabetFromASCII(_ incoming: String) -> String {
|
func restorePhonabetFromASCII(_ incoming: String) -> String {
|
||||||
let dicPhonabet4ASCII = [
|
|
||||||
"b": "ㄅ", "p": "ㄆ", "m": "ㄇ", "f": "ㄈ", "d": "ㄉ", "t": "ㄊ", "n": "ㄋ", "l": "ㄌ", "g": "ㄍ", "k": "ㄎ", "h": "ㄏ",
|
|
||||||
"j": "ㄐ", "q": "ㄑ", "x": "ㄒ", "Z": "ㄓ", "C": "ㄔ", "S": "ㄕ", "r": "ㄖ", "z": "ㄗ", "c": "ㄘ", "s": "ㄙ", "i": "ㄧ",
|
|
||||||
"u": "ㄨ", "v": "ㄩ", "a": "ㄚ", "o": "ㄛ", "e": "ㄜ", "E": "ㄝ", "B": "ㄞ", "P": "ㄟ", "M": "ㄠ", "F": "ㄡ", "D": "ㄢ",
|
|
||||||
"T": "ㄣ", "N": "ㄤ", "L": "ㄥ", "R": "ㄦ", "2": "ˊ", "3": "ˇ", "4": "ˋ", "5": "˙",
|
|
||||||
]
|
|
||||||
|
|
||||||
var strOutput = incoming
|
var strOutput = incoming
|
||||||
if !strOutput.contains("_") {
|
if !strOutput.contains("_") {
|
||||||
for entry in dicPhonabet4ASCII {
|
for entry in Self.dicPhonabet4ASCII {
|
||||||
strOutput = strOutput.replacingOccurrences(of: entry.key, with: entry.value)
|
strOutput = strOutput.replacingOccurrences(of: entry.key, with: entry.value)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return strOutput
|
return strOutput
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MARK: - Constants
|
||||||
|
|
||||||
|
static let dicPhonabet2ASCII: [String: String] = [
|
||||||
|
"ㄅ": "b", "ㄆ": "p", "ㄇ": "m", "ㄈ": "f", "ㄉ": "d", "ㄊ": "t", "ㄋ": "n", "ㄌ": "l", "ㄍ": "g", "ㄎ": "k", "ㄏ": "h",
|
||||||
|
"ㄐ": "j", "ㄑ": "q", "ㄒ": "x", "ㄓ": "Z", "ㄔ": "C", "ㄕ": "S", "ㄖ": "r", "ㄗ": "z", "ㄘ": "c", "ㄙ": "s", "ㄧ": "i",
|
||||||
|
"ㄨ": "u", "ㄩ": "v", "ㄚ": "a", "ㄛ": "o", "ㄜ": "e", "ㄝ": "E", "ㄞ": "B", "ㄟ": "P", "ㄠ": "M", "ㄡ": "F", "ㄢ": "D",
|
||||||
|
"ㄣ": "T", "ㄤ": "N", "ㄥ": "L", "ㄦ": "R", "ˊ": "2", "ˇ": "3", "ˋ": "4", "˙": "5",
|
||||||
|
]
|
||||||
|
|
||||||
|
static let dicPhonabet4ASCII: [String: String] = [
|
||||||
|
"b": "ㄅ", "p": "ㄆ", "m": "ㄇ", "f": "ㄈ", "d": "ㄉ", "t": "ㄊ", "n": "ㄋ", "l": "ㄌ", "g": "ㄍ", "k": "ㄎ", "h": "ㄏ",
|
||||||
|
"j": "ㄐ", "q": "ㄑ", "x": "ㄒ", "Z": "ㄓ", "C": "ㄔ", "S": "ㄕ", "r": "ㄖ", "z": "ㄗ", "c": "ㄘ", "s": "ㄙ", "i": "ㄧ",
|
||||||
|
"u": "ㄨ", "v": "ㄩ", "a": "ㄚ", "o": "ㄛ", "e": "ㄜ", "E": "ㄝ", "B": "ㄞ", "P": "ㄟ", "M": "ㄠ", "F": "ㄡ", "D": "ㄢ",
|
||||||
|
"T": "ㄣ", "N": "ㄤ", "L": "ㄥ", "R": "ㄦ", "2": "ˊ", "3": "ˇ", "4": "ˋ", "5": "˙",
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue