And, in some cases, you may want to use
eq instead of relying on a regex.
In this case, I can't reproduce your success when using all lc letters in the $strings... which is what I was trying to do as Brother toolic posted the excellent explanation that metachars, such as parens, have to be escaped (see perlre for more). But note also, below, the use of the qr in creating $str1
#!/usr/bin/perl
use strict;
use warnings; # "use Diagnostics;" might help you, too.
# 948631
my $str1 = qr/hi\(/; # Note use of qr here; see perldoc perlre or p
+erlretut
# Escaped paren; no more complaints from the r
+egex engine
my $str2 = "hi"; # All lc did NOT work until the paren was esca
+ped
if ($str2 =~ $str1) {
print "Match: Yes\n";
} else {
print "Match: No\n";
}
say "Now, using 'eq'";
if ($str2 eq $str1) {
print "Match: Yes\n";
} else {
print "Match: No\n";
}
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.