phpbar.de logo

Mailinglisten-Archive

[php] Regex

[php] Regex

Tobias Orterer php_(at)_phpcenter.de
Tue, 13 Aug 2002 19:41:50 +0200


Bevor ich verzweifle poste ich lieber mal mein Problem... ;o)

Versuche ein regex zu schreiben der folgendes matched:
*.tld *.domain.tld domain.tld *.sub.domain.tld sub.domain.tld 
*.sub.sub.domain.tld sub.sub.domain.tld *.sub.sub.sub.domain.tld 
sub.sub.domain.tld

Zusammengefaßt:
Es muß immer mit *. oder NICHTS beginnen darf x beliebig viele 
subdomains haben aber ggf. nichmal eine domain. Es dürfen 
a-zA-Z0-9 und - vorkommen. Wobei "-" aber nicht allein oder am 
Ende|Anfang vorkommen darf.

Beispiel:
(*.sub.domain.tld || *.tld || *.domain.tld) == TRUE
(.domain.tld || .tld || ..domain.tld || *.*.domain.tld || **.tld) ==
FALSE

Ansätze waren:
1. ([\*]{1}[.]{0,1}|X?)([a-zA-Z0-9.-]{1,}|[\*]{1}).[a-zA-Z]{2,4}
2.
(([\*]{1}[.]{1})|([a-z0-9-]{2,}[.]{1}))(([a-z0-9-]{2,}[.]{1})|(X?))[a-z]{2,4}
3. ([*]{1}|(([a-zA-Z]{1,}|[a-zA-Z-]{2,})| ([0-9]{1,}|[0-9-]{2,})))[.]{1}
  
((([a-zA-Z]{1,}|[a-zA-Z-]{2,})|([0-9]{1,}|[0-9-]{2,}))[.]{1})|[.]{1}[a-zA-Z]{2,4}

Hatte damit bisher aber kein 100%igen Erfolg.


Falls jemandem dazu etwas einfällt, bin auch im ircnet in #uptime
anzutreffen.


Grüße,
Tobsn


php::bar PHP Wiki   -   Listenarchive