Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW

Re^3: non-exact regexp matches

by McMahon (Chaplain)
on Jun 23, 2004 at 15:02 UTC ( #369057=note: print w/replies, xml ) Need Help??

in reply to Re^2: non-exact regexp matches
in thread non-exact regexp matches

Ah, I see. (Also didn't realize that String::Approx doesn't use regexes)

So this is crazy, but it just might work: stick each letter of one string into one array, then each letter of the other string into the other array. Then use List::Compare to figure out how the two strings are different.

List::Compare is my favorite hammer these days. =)

Replies are listed 'Best First'.
Re^4: non-exact regexp matches
by vinforget (Beadle) on Jun 23, 2004 at 15:12 UTC
    cool. This seems like a generalized way to go about it. Hope the performance is ok. I need to compare a 27 character reg-exp to a 1 million character string ! vince
      Reply here when you do it, if you don't mind, I'm interested. I've only ever used List::Compare against arrays with a few thousand elements. Performance was quite acceptable under those conditions. .
        ok. Thanks again.
      You are talking about regexes, but your example shows the most trivial regex one can image, namely one that doesn't contain any characters that are special. Do you want to match any possible regex, or are you just looking for matching strings? The latter is far, far more easier than the former - and the latter doesn't need the regex engine at all.


        Optimally, I want to match any regexp, but I am not sure if regexps in perl can handle this in a stable fashion. I've been using regexp to report all nested pattern matches with positions of matches using $-[0]:
        m/(regexp)(?{ print $-[0] )(?!)/;

        but everywhere I look most people say to stay away from this stuff because:
        1) it is not stable
        2) it may not be supported in newer versions of perl.
        So I'm not sure if I should take a more specific yet stable approach, or a generalisable yet potentialy unstable approach.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://369057]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (2)
As of 2018-05-28 01:43 GMT
Find Nodes?
    Voting Booth?