Jose Malacara wrote:
> Can someone help me out here, please.
>
> I have an if statement that is looping over a list of IP addresses:
>
> 192.168.1.1
> 192.168.1.2
> 192.168.1.3 ...192.168.1.10
>
> $value="192.168.1.1"
> if ($line =~ /($value)/) ...
Should not return true for
192.168.1.3
But should return true for:
192b16801h1
192316871k1085d
192_168-161
192>168<1 1
etc..{1/0}
> I only want to match the value exactly (192.168.1.1). My problem is that I am
> matching all addresses containing that string (192.168.1.10, 192.168.1.11,
> 192.168.1.100, etc...)
>
> I know the trailing '$' anchors the match to the end of the line only, but I cannot
> seem to get it to work as I think my syntax is incorrect.
>
> Any help would be appreciated.
>
> Thanks,
> Jose
Hi Jose,
Could you send more of the code, and some test results? Although there is clearly a
problem with using a simple quoted string in a regex, I don't see the results you cite
as
reflecting the consequences. As noted above, something like '192.168.1.3' should not
match, so I think there may be some problem elsewhere in the code, also.
For now, you might want to:
perldoc -f quotemeta
Joseph
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]