/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
RegExp problem
Fra : Brian Ipsen


Dato : 25-11-04 13:26

Hej,

I et perl-modul i Apache::DnsZone er følgende kode:

#######################################################
# check_txt(txt) #
# checks txt for invalid chars and other invalidities #
#######################################################

sub check_txt ($) {
my $txt = shift;
Debug(5, qq{check_txt($txt) called\n});
return 0 unless $txt =~ /^[\s\w\d\.\-_]+$/;
return 0 unless (length($txt) <= 255);
# needs more checkups!
return 1;
}

Problemet er, at jeg skal have en streng som:

v=spf1 a:mail.vsrv02.pitweb.dk ~all

igennem og godkendt af rutinen - hvor i RegExp'en går det galt ??

/Brian



 
 
Lars Balker Rasmusse~ (25-11-2004)
Kommentar
Fra : Lars Balker Rasmusse~


Dato : 25-11-04 14:01

"Brian Ipsen" <bipsen@andebakken.dk> writes:
> return 0 unless $txt =~ /^[\s\w\d\.\-_]+$/;

Ingen =, : og ~ i []'en.

> v=spf1 a:mail.vsrv02.pitweb.dk ~all
^ ^ ^
--
Lars Balker Rasmussen Consult::Perl
http://consult-perl.dk

Brian Ipsen (25-11-2004)
Kommentar
Fra : Brian Ipsen


Dato : 25-11-04 14:15

"Lars Balker Rasmussen" <lars@balker.org> wrote in message
news:0fhdnedqwb.fsf@lagavulin.balker.org...

>> return 0 unless $txt =~ /^[\s\w\d\.\-_]+$/;
>
> Ingen =, : og ~ i []'en.
>
>> v=spf1 a:mail.vsrv02.pitweb.dk ~all
> ^ ^ ^

Tak - jeg skulle så bare gerne have den rettet til, så disse karakterer også
accepteres... men skal de escape's med \ - eller kan de bare sættes ind ??

Altså:

return 0 unless $txt =~ /^[\s\w\d\.\-:=~_]+$/;

eller

return 0 unless $txt =~ /^[\s\w\d\.\-\=\:\~_]+$/;

eller en mellemting af de 2 ??

/Brian



Tore Aursand (25-11-2004)
Kommentar
Fra : Tore Aursand


Dato : 25-11-04 14:25

On Thu, 25 Nov 2004 14:15:05 +0100, Brian Ipsen wrote:
>>> return 0 unless $txt =~ /^[\s\w\d\.\-_]+$/;

>> Ingen =, : og ~ i []'en.

> Tak - jeg skulle så bare gerne have den rettet til, så disse
> karakterer også accepteres... men skal de escape's med \ - eller kan de
> bare sættes ind ??

De kan bare settes inn;

return 0 unless ( /^[\s\w\d\.\-_=]+$/ );


--
Tore Aursand <toreau@gmail.com>
"To cease smoking is the easiset thing I ever did. I ought to know,
I've done it a thousand times." (Mark Twain)

Lars Balker Rasmusse~ (25-11-2004)
Kommentar
Fra : Lars Balker Rasmusse~


Dato : 25-11-04 14:54

Tore Aursand <toreau@gmail.com> writes:
> return 0 unless ( /^[\s\w\d\.\-_=]+$/ );

Faktisk er /^[-\s\w.=]+$/ rigeligt.

\w indeholder allerede '_' og \d, '.' behøves ikke escapes i en
character class, og '-' heller ikke, hvis den placeres først i
klassen.

Less is more.

Og ud fra den betragtning vender man så logikken:

return 0 if /[^-\s\w.=]/;
--
Lars Balker Rasmussen Consult::Perl
http://consult-perl.dk

Thorbjoern Ravn Ande~ (25-11-2004)
Kommentar
Fra : Thorbjoern Ravn Ande~


Dato : 25-11-04 17:49

Lars Balker Rasmussen <lars@balker.org> writes:

> Less is more.

Tid til golf?
--
Thorbjørn Ravn Andersen
http://unixsnedkeren.dk/ravn

Lars Balker Rasmusse~ (25-11-2004)
Kommentar
Fra : Lars Balker Rasmusse~


Dato : 25-11-04 19:11

Thorbjoern Ravn Andersen <nospam0000@c.dk> writes:
> Lars Balker Rasmussen <lars@balker.org> writes:
>> Less is more.
>
> Tid til golf?

Golf er så den perverse side af sagen - jeg har altid ment man skal
udtrykke sig minimalt muligt, _uden_at_det_går_ud_over_forståelsen_.
Det krav kan man vist ikke beskylde golf-vindere for at leve op til.
--
Lars Balker Rasmussen Consult::Perl
http://consult-perl.dk

Thorbjoern Ravn Ande~ (25-11-2004)
Kommentar
Fra : Thorbjoern Ravn Ande~


Dato : 25-11-04 21:22

Lars Balker Rasmussen <lars@balker.org> writes:

> > Tid til golf?
>
> Golf er så den perverse side af sagen - jeg har altid ment man skal
> udtrykke sig minimalt muligt, _uden_at_det_går_ud_over_forståelsen_.
> Det krav kan man vist ikke beskylde golf-vindere for at leve op til.

Hov hov - kan man tillade sig at være SÅ kedelig hvis man bruger så
syrede smileyer som =] ?

--
Thorbjørn Ravn Andersen
http://unixsnedkeren.dk/ravn

Lars Balker Rasmusse~ (25-11-2004)
Kommentar
Fra : Lars Balker Rasmusse~


Dato : 25-11-04 21:36

Thorbjoern Ravn Andersen <nospam0000@c.dk> writes:
> Hov hov - kan man tillade sig at være SÅ kedelig hvis man bruger så
> syrede smileyer som =] ?

Smileyen var Tores! =)
--
Lars Balker Rasmussen Consult::Perl
http://consult-perl.dk

Søg
Reklame
Statistik
Spørgsmål : 177417
Tips : 31962
Nyheder : 719565
Indlæg : 6407865
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste