aboutsummaryrefslogtreecommitdiff
path: root/leetcode/lc-345-reverse-vowels.rkt
diff options
context:
space:
mode:
Diffstat (limited to 'leetcode/lc-345-reverse-vowels.rkt')
-rw-r--r--leetcode/lc-345-reverse-vowels.rkt9
1 files changed, 9 insertions, 0 deletions
diff --git a/leetcode/lc-345-reverse-vowels.rkt b/leetcode/lc-345-reverse-vowels.rkt
new file mode 100644
index 0000000..c05bf2d
--- /dev/null
+++ b/leetcode/lc-345-reverse-vowels.rkt
@@ -0,0 +1,9 @@
+#lang racket
+
+(define/contract (reverse-vowels s)
+ (-> string? string?)
+ (define vowels-only
+ (string-replace s #rx"[^aeiouAEIOU]" ""))
+ (define consonants-with-placeholders
+ (string-replace s #rx"[aeiouAEIOU]" "~a"))
+ (apply format consonants-with-placeholders (reverse (string->list vowels-only)))) \ No newline at end of file