Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Regex checking text is made up of the keys of a hash.

by blakem (Monsignor)
on Mar 01, 2003 at 03:04 UTC ( #239627=note: print w/replies, xml ) Need Help??


in reply to Regex checking text is made up of the keys of a hash.

It might not really be what you want, but I believe it fits the specs:
#!/usr/bin/perl -wT use strict; my %validLanguages = ( "de" => "german", "en" => "english", "es" => "spanish", "fr" => "french", "it" => "italian", "ja" => "japanise", "ko" => "korean", "ru" => "russian", "sv" => "WHATS THIS", "zh" => "WHATS THIS", "zh_TW" => "WHATS THIS" ); # test it for ('dog','cat','de,en',' ',',,,','deensvzh') { printf "%-10s %s a list of languages\n", "'$_'", (isItJustAListOfLanguages($_) ? "is" : "is NOT"); } sub isItJustAListOfLanguages{ my $text = shift; my @tokens = (keys %validLanguages, '\s',','); my $tokenpatt = join('|',@tokens); return $text =~ /^($tokenpatt)+$/; } __END__ 'dog' is NOT a list of languages 'cat' is NOT a list of languages 'de,en' is a list of languages ' ' is a list of languages ',,,' is a list of languages 'deensvzh' is a list of languages

-Blake

Replies are listed 'Best First'.
Re: Re: Regex checking text is made up of the keys of a hash.
by heezy (Monk) on Mar 01, 2003 at 23:04 UTC

    This is so cool, it works so well and it's only 4 lines!

    thanks a lot!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://239627]
help
Chatterbox?
[LanX]: yeah its a religious mafia , the only two big calvinist houses are dutch and prussian. ..
[LanX]: choroba yes
[erix]: Utrecht has a beautiful old center, and less mass-tourism than Amsterdam
[erix]: next time, drop by :)
[LanX]: religion is also the reason how the house of Hanover aquire the English throne, all other candidates on succession where catholics...
[erix]: Henry VIII has a lot to answer for :P
[LanX]: erix sure next time you miss a conference nearby we drop by ...
[LanX]: did you even go to the Dutch Perl Workshop in Utrecht?
[erix]: haha ok. I'm going to Glasgow though, and make a long road trip round the isles
[erix]: [Lanx} not the last time but the one before (there have been two)

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (9)
As of 2017-12-15 16:40 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    What programming language do you hate the most?




















    Results (439 votes). Check out past polls.

    Notices?