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]

Reply via email to