WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

 
 
Themen-Optionen Ansicht
Alt 12.06.2005, 11:16   #3
jak
Inventar
 
Registriert seit: 13.06.2001
Beiträge: 1.830


Standard

Die Frage ist wie Variabel es sein muss. Am einfachsten ist es, wenn als Variablenname nur z.B. "$var" vorkommt, und $var nur einmal im String vorkommt.
Das ginge in php mit:
Code:
$result=str_replace ( "_$var_", $var, "blablabla_$var_blabla");
Wenn der Variablenname unbekannt ist:
Code:
$varInDb="blablabla_$var_blabla";
$result="";
$startPos=strpos($varInDb,"_$");
if($startPos===false){
  $result="Keine Variable vorhanden";
} else {
  $endPos=strpos($varInDb,"_",$startPos);
  $varName=substr($varInDb, $startPos, $endPos - $startPos);
  $result=substr($varInDb, 0, $startPos) . $$varName . $substr($varInDb, $endPos);
}
Beim zweiten Codeblock müsstest du austesten wie perl bzw. php die Zeichen in Strings zählt (bei 0 beginnend, wo beginnt der Suchstring usw). Eventuell musst du z.B. bei $startPos noch 1 oder 2 dazuaddieren.

Ich kenn mich mit Perl leider nicht aus, vielleicht musst du mit unpack() und pack() arbeiten.
Strings ersetzen geht dort irgendwie mit s/ersetzeDas/durchDas
Du kannst dich auch mit folgenden Dingen spielen:
$varInDb=~/_$[a-zA-Z]+_/
$` sollte dann "blablabla" sein
$& sollte _$var_ sein
$' sollte blabla sein

Vielleicht helfen dir auch die Punkte 9-11 dort weiter: http://www.perl-archiv.de/perl/tutor...rl_start.shtml

hth,
Jak
____________________________________
Join the DNRC | Godwin\'s Law (thx@stona)
Documentation is like sex: If it\'s good, it\'s very, very good. If it\'s bad, it\'s better than nothing.
\"In theory, theory and practice are the same. In practice, they are not\" (Lawrence Berra)
jak ist offline   Mit Zitat antworten
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:21 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag