From 10ccb2c8e530f4a910740c6ef3bc97049d5cac1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20M=C3=A9a?= Date: Thu, 26 Mar 2026 11:18:17 -0400 Subject: [PATCH 1/2] String cleaner > tweak short trip head-sign & stop name... --- src/main/java/org/mtransit/commons/CleanUtilsExt.kt | 6 +++--- src/main/java/org/mtransit/commons/StringsCleaner.kt | 12 +++++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/mtransit/commons/CleanUtilsExt.kt b/src/main/java/org/mtransit/commons/CleanUtilsExt.kt index 0864d2f..fbef3aa 100644 --- a/src/main/java/org/mtransit/commons/CleanUtilsExt.kt +++ b/src/main/java/org/mtransit/commons/CleanUtilsExt.kt @@ -27,7 +27,7 @@ import org.mtransit.commons.CleanUtils.PLACE_CHAR_TSSE fun makeALL_ST_REGEX() = buildString { - append("((^\\s*|/\\s*)(") + append("((^\\s*|/\\s*)(") // |\s+ not after another word append( listOf( PLACE_CHAR_ARRONDISSEMENT, @@ -51,7 +51,7 @@ fun makeALL_ST_REGEX_REPLACEMENT() = "$2" fun makeALL_CHARS_REGEX() = buildString { - append("((^\\s*|/\\s*)(") + append("((^\\s*|/\\s*|\\s+)(") // |\s+ after another word append( listOf( PLACE_CHAR_DE_L, @@ -73,7 +73,7 @@ fun makeALL_CHARS_REGEX_REPLACEMENT() = "$2" fun makeALL_FACE_A_REGEX() = buildString { - append("((^|\\s)(") + append("((^\\s*|/\\s*)(") // |\s+ not after another word append( listOf( "face à ", diff --git a/src/main/java/org/mtransit/commons/StringsCleaner.kt b/src/main/java/org/mtransit/commons/StringsCleaner.kt index ad3d965..7061ce8 100644 --- a/src/main/java/org/mtransit/commons/StringsCleaner.kt +++ b/src/main/java/org/mtransit/commons/StringsCleaner.kt @@ -23,6 +23,8 @@ object StringsCleaner { return routeLongName } + private const val TRIP_HEADSIGN_SHORT_MAX_LENGTH = 13 + @JvmOverloads @JvmStatic fun cleanTripHeadsign( @@ -54,10 +56,13 @@ object StringsCleaner { if (languages?.contains(Locale.FRENCH) == true) { tripHeadsign = CleanUtils.keepToFR(tripHeadsign) } - tripHeadsign = cleanString(tripHeadsign, languages, lowerUCStrings, lowerUCWords, *ignoredUCWords, short = true) + val makeShorter = tripHeadsign.length > TRIP_HEADSIGN_SHORT_MAX_LENGTH + tripHeadsign = cleanString(tripHeadsign, languages, lowerUCStrings, lowerUCWords, *ignoredUCWords, short = makeShorter) return tripHeadsign } + private const val STOP_NAME_SHORT_MAX_LENGTH = 17 + @JvmOverloads @JvmStatic fun cleanStopName( @@ -79,7 +84,8 @@ object StringsCleaner { } } - stopName = cleanString(stopName, languages, lowerUCStrings, lowerUCWords, *ignoredUCWords, short = true) + val makeShorter = stopName.length > STOP_NAME_SHORT_MAX_LENGTH + stopName = cleanString(stopName, languages, lowerUCStrings, lowerUCWords, *ignoredUCWords, short = makeShorter) return stopName } @@ -101,10 +107,10 @@ object StringsCleaner { } string = CleanUtils.cleanSlashes(string) if (languages?.contains(Locale.ENGLISH) == true) { + string = CleanUtils.fixMcXCase(string) if (short) { string = CleanUtils.CLEAN_AND.matcher(string).replaceAll(CleanUtils.CLEAN_AND_REPLACEMENT) string = CleanUtils.CLEAN_AT.matcher(string).replaceAll(CleanUtils.CLEAN_AT_REPLACEMENT) - string = CleanUtils.fixMcXCase(string) string = CleanUtils.cleanStreetTypes(string) string = CleanUtils.cleanNumbers(string) } From 6c09874122a93109d72175d8422f7e2fb34f66a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20M=C3=A9a?= Date: Thu, 26 Mar 2026 11:24:49 -0400 Subject: [PATCH 2/2] PR comment --- src/main/java/org/mtransit/commons/CleanUtilsExt.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/mtransit/commons/CleanUtilsExt.kt b/src/main/java/org/mtransit/commons/CleanUtilsExt.kt index fbef3aa..0e6a60e 100644 --- a/src/main/java/org/mtransit/commons/CleanUtilsExt.kt +++ b/src/main/java/org/mtransit/commons/CleanUtilsExt.kt @@ -73,7 +73,7 @@ fun makeALL_CHARS_REGEX_REPLACEMENT() = "$2" fun makeALL_FACE_A_REGEX() = buildString { - append("((^\\s*|/\\s*)(") // |\s+ not after another word + append("((^\\s*|/\\s*|\\s+)(") // |\s+ after another word append( listOf( "face à ",