Fix getNormalizedSymbol() for Ł letter
This commit is contained in:
parent
3c5a4d66ce
commit
a3b97edd48
2 changed files with 22 additions and 4 deletions
|
@ -65,13 +65,17 @@ fun getScriptParam(name: String, content: String, fallback: String = ""): String
|
|||
}
|
||||
}
|
||||
|
||||
fun String.getNormalizedSymbol(): String {
|
||||
return trim().lowercase().replace("default", "").run {
|
||||
fun String.getNormalizedSymbol(): String = this
|
||||
.trim().lowercase()
|
||||
.replace("default", "")
|
||||
.run {
|
||||
Normalizer.normalize(this, Normalizer.Form.NFD).run {
|
||||
"\\p{InCombiningDiacriticalMarks}+".toRegex().replace(this, "")
|
||||
}
|
||||
}.replace("[^a-z0-9]".toRegex(), "").ifBlank { "Default" }
|
||||
}
|
||||
.replace("ł", "l")
|
||||
.replace("[^a-z0-9]".toRegex(), "")
|
||||
.ifBlank { "Default" }
|
||||
|
||||
fun List<Recipient>.normalizeRecipients() = map { it.parseName() }
|
||||
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
package io.github.wulkanowy.sdk.scrapper
|
||||
|
||||
import org.junit.Assert.*
|
||||
import org.junit.Test
|
||||
|
||||
class UtilsKtTest {
|
||||
|
||||
@Test
|
||||
fun `get normalized symbol`() {
|
||||
assertEquals("warszawa", "Warszawa".getNormalizedSymbol())
|
||||
assertEquals("lodz", "Łódź".getNormalizedSymbol())
|
||||
assertEquals("tomaszowmazowiecki", "Tomaszów Mazowiecki".getNormalizedSymbol())
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue