Hallo Forum,
da reguläre Ausdrücke immer noch sehr neu für mich sind,
Hier Aufgabe und meine Lösung.
Bei allen Links die in einer Textvariablen sind, mal einen Dummy gebaut, soll der erste und nur der erste Buchstabe unterstrichen sein.
Das style werde ich natürlich noch durch eine klasse definieren.
Und auch keine Diskussuion um den Sinn oder Unsinn über diese Anforderung.
Liebe Grüße,
Bernd
<?PHP
$myString ='<div id="myNavigationList">'."\n";
$myString = $myString.'<ul id="navList">'."\n";
$myString = $myString.' <li><strong><a href="#">kognito gestaltung</a></strong></li>'."\n";
$myString = $myString.' <li><a href="Feature_cs/index.php" title="Feature">Feature</a></li>'."\n";
$myString = $myString.' <li><a href="profil_cs/index.php" title="Profil">Profil</a></li>'."\n";
$myString = $myString.' <li><a href="projekte_cs/index.php" title="Projekte">Projekte</a></li>'."\n";
$myString = $myString.' <li><a href="publikationen_cs/index.php" title="Publikationen">Publikationen</a></li>'."\n";
$myString = $myString.' <li><a href="kontakt_cs/index.php" title="Kontakt">Kontakt</a></li>'."\n";
$myString = $myString.'</ul>'."\n";
$myString = $myString.'</div>'."\n";
// die Callback-Funktion
function firstLetterUnderline($treffer){
return $treffer[1]."<span style="text-decoration:underline">".$treffer[2]."</span>".$treffer[3].$treffer[4];
}
$myString = preg_replace_callback( "|(<a.*>)([a-zA-Z0-9])(.*)(</a>)|", "firstLetterUnderline",$myString);
echo($myString);
?>