diff --git a/src/main/java/org/mtransit/commons/CleanUtils.java b/src/main/java/org/mtransit/commons/CleanUtils.java index 31cbd3b..8f9ae47 100644 --- a/src/main/java/org/mtransit/commons/CleanUtils.java +++ b/src/main/java/org/mtransit/commons/CleanUtils.java @@ -722,7 +722,8 @@ public static String cleanMergedID(@NotNull String mergedId) { return ID_MERGED.matcher(mergedId).replaceAll(ID_MERGED_REPLACEMENT); } - static final Pattern LINE = cleanWords("line"); + static final Pattern LINE = Pattern.compile("(^|\\s)(line)(\\s|$)", Pattern.CASE_INSENSITIVE); + static final String LINE_REPLACEMENT = "$1$3"; // http://www.semaphorecorp.com/cgi/abbrev.html private static final Pattern STREET = cleanWords("street"); diff --git a/src/main/java/org/mtransit/commons/StringsCleaner.kt b/src/main/java/org/mtransit/commons/StringsCleaner.kt index 7061ce8..87d2759 100644 --- a/src/main/java/org/mtransit/commons/StringsCleaner.kt +++ b/src/main/java/org/mtransit/commons/StringsCleaner.kt @@ -17,7 +17,7 @@ object StringsCleaner { ): String { var routeLongName = originalRouteLongName if (languages?.contains(Locale.ENGLISH) == true) { - routeLongName = CleanUtils.LINE.matcher(routeLongName).replaceAll(EMPTY) + routeLongName = CleanUtils.LINE.matcher(routeLongName).replaceAll(CleanUtils.LINE_REPLACEMENT) } routeLongName = cleanString(routeLongName, languages, lowerUCStrings, lowerUCWords, *ignoredUCWords, short = false) return routeLongName @@ -108,9 +108,9 @@ object StringsCleaner { string = CleanUtils.cleanSlashes(string) if (languages?.contains(Locale.ENGLISH) == true) { string = CleanUtils.fixMcXCase(string) + string = CleanUtils.CLEAN_AT.matcher(string).replaceAll(CleanUtils.CLEAN_AT_REPLACEMENT) 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.cleanStreetTypes(string) string = CleanUtils.cleanNumbers(string) }