Fix is valid pinyin method
Some checks failed
Pull Request / build (pull_request) Has been cancelled

This commit is contained in:
Marvin Elsen 2024-09-20 13:23:01 +02:00
parent e1dbdb37eb
commit 7c51dd2018
Signed by: marvinelsen
GPG Key ID: 820672408CC318C2
2 changed files with 5 additions and 3 deletions

View File

@ -5,7 +5,7 @@ plugins {
}
group = "com.marvinelsen"
version = "1.0-SNAPSHOT"
version = "1.1-SNAPSHOT"
repositories {
mavenCentral()

View File

@ -15,7 +15,9 @@ data class Syllable(
private val zhuyinToneMarkRegex = """[ˊˇˋ˙]""".toRegex()
fun isValidPinyinWithToneNumberSyllable(pinyinSyllable: String) =
pinyinSyllable.last().isDigit() && pinyinSyllable.last().digitToInt() in 1..5 && pinyinSyllable.lowercase() in pinyinToZhuyin
pinyinSyllable.last().isDigit() && pinyinSyllable.last().digitToInt() in 1..5 && pinyinSyllable
.substring(0, pinyinSyllable.lastIndex)
.lowercase() in pinyinToZhuyin
fun fromPinyinWithToneNumber(pinyinWithToneNumber: String): Syllable {
val pinyinWithoutNumber = pinyinWithToneNumber.substring(0, pinyinWithToneNumber.lastIndex)
@ -45,7 +47,7 @@ data class Syllable(
return Syllable(
zhuyinToPinyin[zhuyinWithoutToneMark]!!,
Tone.fromZhuyinToneMarkOrNull(zhuyin.last()) ?: Tone.fromZhuyinToneMarkOrNull(zhuyin.first())
?: Tone.FIRST
?: Tone.FIRST
)
}