View Problem

Check if a string contains a match to a regular expression

Display "ok" if "abc 123 @#$" matches /\d+/
ExpandDiskEdit
ruby
puts "ok" if (text=~/\d+/)
ExpandDiskEdit
cpp C++/CLI .NET 2.0
if (Regex::IsMatch("abc 123 @#$", "\\d+")) Console::WriteLine("ok");
DiskEdit
clojure
(if (re-find #"\d+" "abc 123 @#$")
(println "ok"))
ExpandDiskEdit
fsharp
if (Regex.IsMatch("abc 123 @#$", "\\d+")) then printfn "ok"
ExpandDiskEdit
erlang
% Erlang uses 'egrep'-compatible regular expressions, so shortcuts like '\d' not supported
String = "abc 123 @#$", Regexp = "[0-9]+",
is_match(String, Regexp) andalso (begin io:format("ok~n"), true end).
DiskEdit
erlang 12B3+
case re:run("abc 123 @#$", "\\d+") of {match, _} -> ok end.
DiskEdit
groovy
if ('abc 123 @#$' =~ /\d+/) println 'ok'
DiskEdit
groovy 1.6.1+
if ('abc 123 @#$'.find(/\d+/)) println 'ok'
DiskEdit
ocaml
#load "str.cma" ;;

let re = Str.regexp "[0-9]+" in
try let _ = Str.search_forward re "abc 123 @#$" 0 in
print_string "ok"
with _ -> ()

Submit a new solution for ruby, cpp, clojure, fsharp ...
There are 8 other solutions in additional languages (csharp, fantom, haskell, java ...)