2021-11-03 18:07:53 +01:00
|
|
|
== Compliant Solution
|
|
|
|
|
2022-02-04 17:28:24 +01:00
|
|
|
[source,kotlin]
|
2021-11-03 18:07:53 +01:00
|
|
|
----
|
|
|
|
val p = Pattern.compile("^$", Pattern.MULTILINE) // Noncompliant
|
|
|
|
val r = Regex("^$", RegexOption.MULTILINE) // Noncompliant
|
|
|
|
|
|
|
|
fun containsEmptyLines(str: String) : Boolean {
|
|
|
|
return p.matcher(str).find() || str.isEmpty()
|
|
|
|
}
|
|
|
|
|
|
|
|
fun containsEmptyLinesKotlin(str: String) = r.find(str) != null || str.isEmpty()
|
|
|
|
|
|
|
|
// ...
|
|
|
|
println(containsEmptyLines("a\n\nb")) // correctly prints 'true'
|
|
|
|
println(containsEmptyLinesKotlin("a\n\nb")) // correctly prints 'true'
|
|
|
|
|
|
|
|
println(containsEmptyLines("")) // correctly prints 'true'
|
|
|
|
println(containsEmptyLinesKotlin("")) // correctly prints 'true'
|
|
|
|
----
|