in reply to Logical Operation - Numeric vs String

I'd be inclined to use split. For example:
#!/usr/bin/perl -w use strict; while (<DATA>) { my ($major, $minor, $revision) = split /\./; print "Major:$major Minor:$minor Revision:$revision\n"; # Do other processing here } __DATA__ 10.00.359 10.01.1000 10.02.2000

You can then use $major in whatever comparisons you want, store it in a hash, or whatever.

Note that the period (.) must be escaped in the split match, otherwise it would be taken to mean "any character".

Hope this helps,
Darren :)