How to check if a string includes $sometext$ without numbers in Kotlin

1 Answer

0 votes
fun includeDollarSymbolText(text: String): Boolean {
    // Regex to match $word$, case-insensitive
    val pattern = Regex("""\$\p{Lower}+\$""", RegexOption.IGNORE_CASE)

    // Replace matched $word$ with empty string
    val cleanedText = pattern.replace(text, "")

    // Check if any dollar symbols remain
    return !cleanedText.contains('$')
}

fun main() {
    println(includeDollarSymbolText("abc xy \$text\$ z"))              // ok
    println(includeDollarSymbolText("abc xy \$ text\$ z"))             // space
    println(includeDollarSymbolText("abc xy \$\$ z"))                  // empty
    println(includeDollarSymbolText("abc 100 \$text\$ z"))             // ok
    println(includeDollarSymbolText("abc \$1000 \$text\$ z"))          // open $
    println(includeDollarSymbolText("abc xy \$IBM\$ z \$Microsoft\$")) // ok
    println(includeDollarSymbolText("abc xy \$F3\$ z"))                // include number
    println(includeDollarSymbolText("abc xy \$text z"))                // missing close $
}

 
  
/*
run:
  
true
false
false
true
false
true
false
false

*/

 



answered Jul 11, 2025 by avibootz
...