Reverse the gender of a string: Difference between revisions

Added Kotlin
No edit summary
(Added Kotlin)
Line 107:
<pre>He was a soul stripper. He took my heart!
She was a soul stripper. She took my heart!</pre>
 
=={{header|Kotlin}}==
This program uses a similar approach to the FreeBASIC entry:
<lang scala>// version 1.0.6
 
fun reverseGender(s: String): String {
var t = s
val words = listOf("She", "she", "Her", "her", "hers", "He", "he", "His", "his", "him")
val repls = listOf("He_", "he_", "His_", "his_" ,"his_", "She_", "she_", "Her_", "her_", "her_")
for (i in 0 until words.size) {
val r = Regex("""\b${words[i]}\b""")
t = t.replace(r, repls[i])
}
return t.replace("_", "")
}
 
fun main(args: Array<String>) {
println(reverseGender("She was a soul stripper. She took his heart!"))
println(reverseGender("He was a soul stripper. He took her heart!"))
println(reverseGender("She wants what's hers, he wants her and she wants him!"))
println(reverseGender("Her dog belongs to him but his dog is hers!"))
}</lang>
 
{{out}}
<pre>
He was a soul stripper. He took her heart!
She was a soul stripper. She took his heart!
He wants what's his, she wants his and he wants her!
His dog belongs to her but her dog is his!
</pre>
 
=={{header|PowerShell}}==
9,476

edits