package exh.util fun List.trimAll() = map { it.trim() } fun List.dropBlank() = filter { it.isNotBlank() } fun List.dropEmpty() = filter { it.isNotEmpty() } private val articleRegex by lazy { "^(an|a|the) ".toRegex(RegexOption.IGNORE_CASE) } fun String.removeArticles(): String { return replace(articleRegex, "") } fun String.trimOrNull(): String? { val trimmed = trim() return if (trimmed.isBlank()) null else trimmed } fun String?.nullIfBlank(): String? = if (isNullOrBlank()) { null } else { this }