Phrase reversals: Difference between revisions
Content added Content deleted
(Emacs Lisp: Fix formatting, use with-output-to-temp-buffer) |
|||
Line 786: | Line 786: | ||
=={{header|Dyalect}}== |
=={{header|Dyalect}}== |
||
<lang dyalect>let str = "rosetta code phrase reversal" |
<lang dyalect>let str = "rosetta code phrase reversal" |
||
//or you can use a built-in method String.reverse |
//or you can use a built-in method String.reverse |
||
func reverse(str) { |
func reverse(str) { |
||
let xs = [] |
let xs = [] |
||
for i in (str. |
for i in (str.Length()-1)^-1..0 { |
||
xs. |
xs.Add(str[i]) |
||
} |
} |
||
String. |
String.Concat(values: xs) |
||
} |
} |
||
func reverseByWord(str) { |
func reverseByWord(str) { |
||
let words = str. |
let words = str.Split(" ") |
||
let xs = [] |
let xs = [] |
||
for w in words { |
for w in words { |
||
xs. |
xs.Add(reverse(w)) |
||
xs. |
xs.Add(" ") |
||
} |
} |
||
String. |
String.Concat(values: xs) |
||
} |
} |
||
func reverseWords(str) { |
func reverseWords(str) { |
||
let words = str. |
let words = str.Split(" ") |
||
let xs = [] |
let xs = [] |
||
for i in (words. |
for i in (words.Length()-1)^-1..0 { |
||
xs. |
xs.Add(words[i]) |
||
xs. |
xs.Add(" ") |
||
} |
} |
||
String. |
String.Concat(values: xs) |
||
} |
} |
||
print("1. \(reverse(str))") |
print("1. \(reverse(str))") |
||
print("2. \(reverseByWord(str))") |
print("2. \(reverseByWord(str))") |