Hi All,
I wrote myself a nice example of how to use `qqx`
and `m:` (match). It is pretty simple, so it
is probably "way under" the heads of most of you.
But it is a nice example for beginners:
Notes:
resplendence.com is the home of "Who Crashed":
a great utility for Windows users.
the example requires `curl` to be installed.
tests of the example were run under Fedora
Linux V 37. Windows was not tested.
<RegexTest2>
#!/bin/raku
my Str $WebSite = "https://www.resplendence.com/main";
my Str $Match = "";
$WebSite = qqx { curl -L "$WebSite" -o - };
print "\n";
#`{ $WebSite line 913 to 916 (as of 2023-06-23)
<p><font face="Open Sans, Arial" size="2">
WhoCrashed has been updated to v 7.06.
To see what's changed <a href="/whocrashed_whatsnew"; font-weight:
bold"><b>click here</b></a>.
</font></p>
}
if not $WebSite~~m:i/ .*? ( "WhoCrashed has been updated to v ") (.*?)
(".") (.*?) "." / {
print "The match failed. Cowardly Exiting. Bummer Dude!\n";
exit;
}
print "\$0 = <" ~ $0 ~ ">\n";
print "\$1 = <" ~ $1 ~ ">\n";
print "\$2 = <" ~ $2 ~ ">\n";
print "\$3 = <" ~ $3 ~ ">\n\n";
$Match = $1 ~ $2 ~ $3;
print "Version (Match) = <" ~ $Match ~ ">\n";
print "Expected output = <7.06> until the next update\n\n";
/<RegexTest2>
Result:
$ RegexTest2.pl6
% Total % Received % Xferd Average Speed Time Time Time
Current
Dload Upload Total Spent Left
Speed
100 74882 100 74882 0 0 225k 0 --:--:-- --:--:-- --:--:--
225k
$0 = <WhoCrashed has been updated to v >
$1 = <7>
$2 = <.>
$3 = <06>
Version (Match) = <7.06>
Expected output = <7.06> until the next update
-T