Beate Mielke: Regular Expressions

Beitrag lesen

Hallo Marko,

:-) Danke für die Antwort, aber wie würde der Code allgemein aussehen, d.h. für beliebige Zeichen?

Wie waer's damit:

----------

$Testwort = <STDIN>;     # Dein A..-Wort zum Beispiel
$Teststring = <STDIN>;   # Dein zu untersuchender String

for ($i = 0, $i < length($Testwort), $i++)

{
$Auswertung = substr($Testwort, $i, 1) . ".*";

setzt hinter jedes Zeichen von $Testwort Punkt  und Stern

}

$Auswertung .= substr($Testwort, -1, 1);

haengt noch das letzte Zeichen dran,

das von der Schleife nicht abgearbeitet wurde

den Punkt vor dem Gleichheitszeichen nicht uebersehen

if ($Teststrung =~ /$Auswertung/i) 1:0;

das i hinterm Schraegstrich, um Gross/Kleinschreibung zu ignorieren

----------

Mit den Zeilen kannst Du jetzt jeden beliebigen Substring in jedem beliebigen String auf Deine angefragte Art testen.

Beispiel:

$Testwort = "aus";

a) $Teststring = "Augenschmauss"     ergibt "enthalten"
b) $Teststring = "auweia"                   ergibt nicht enthalten

Funktioniert, ich hab's getestet.

Viele Gruesse

Beate Mielke