substringBeforeLast
Returns a substring before the last occurrence of delimiter. If the string does not contain the delimiter, returns missingDelimiterValue which defaults to the original string.
fun String.substringBeforeLast(delimiter: Char, missingDelimiterValue: String = this): String(source)
fun main() {
val path = "/usr/local/bin/executable"
val directory = path.substringBeforeLast('/') // "/usr/local/bin"
val name = "filename.txt"
val base = name.substringBeforeLast('.') // "filename"
val noDelimiter = "simpleString"
val unchanged = noDelimiter.substringBeforeLast('-') // "simpleString"
}