php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.10.2007, 00:00  
Benutzer
 
Registriert seit: 02.10.2007
Beiträge: 52
DJ Nuno befindet sich auf einem aufstrebenden Ast
Standard VB Code Highlight funktion

Hallo,

ich möchte gerne eine Funktion schreiben die einen VB Quellcode Highlighten kann.
Ist an und für sich nicht schwer da ich einfach nur die meisten befehle in Blau schreiben muss und halt die schriftart anpassen.
Allerdings gibt es ein Kopblem denn kommntare werden mit einem hochkommer gesetzt, was mich zu meiner frage bringt:

Wie kann ich ein text nach einem zeichen bis zur neuen Zeile in einer bestimmten farbe einfärben?

Beispiel was ich meine:

' das ist ein Kommentar! <- und hierrum gehts
If Frage_Verstanden = True Then

AntwortAbwarten = True
End If

Vielen dank im voraus!
__________________
MFG
DJ Nuno
DJ Nuno ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 19.10.2007, 09:11  
Erfahrener Benutzer
 
Benutzerbild von Montellese
 
Registriert seit: 30.07.2007
Beiträge: 541
Montellese befindet sich auf einem aufstrebenden Ast
Montellese eine Nachricht über MSN schicken
Standard

Machst du die Einfärbung mit Regulären Ausdrücken? Wenn ja, dann könnte dir das $ Zeichen helfen, das bei einem regulären Ausdruck für das Ende einer Zeile steht. Das würde dann also irgendwie so aussehen:

PHP-Code:
preg_replace("/('.*?)$/",'<span style="color: #00FF00">\\0</span>',$text); 
Montellese ist offline  
Alt 20.10.2007, 00:54  
Benutzer
 
Registriert seit: 02.10.2007
Beiträge: 52
DJ Nuno befindet sich auf einem aufstrebenden Ast
Standard

Danke für die antwort werde das mal probieren, der Text soll direkt aus einer Textarea bzw. der datenbank ausgegeben werden und dann entsprechend eingefärbt.

Vielen dank erstmal!
__________________
MFG
DJ Nuno
DJ Nuno ist offline  
Alt 20.10.2007, 12:56  
Benutzer
 
Registriert seit: 02.10.2007
Beiträge: 52
DJ Nuno befindet sich auf einem aufstrebenden Ast
Standard

Hallo,

Leider hat das nicht funktioniert.
Habe mitlerweile folgenden code:

PHP-Code:
<?
    
if(isset($_POST['Submit'])) {
        
$text htmlspecialchars($_POST['textarea']);
        
$text nl2br($text);
        
$text str_replace("\'""'"$text);
        
$text preg_replace("/'(.*)\<br>/","<font color=\"#FF0000\">\\1</font>",$text); 
        echo 
$text;
    }
?>
<br><hr><br>
<form name="form1" method="post" action="">
  <p>
    <textarea name="textarea" cols="80" rows="10"><? 
    $_POST
['textarea'] = str_replace("\'""'"$_POST['textarea']); 
    echo 
$_POST['textarea']; ?></textarea>
  </p>
  <p>
    <input type="submit" name="Submit" value="Senden">
  </p>
</form>
Allerdings funktioniert das nicht

Es liegt wohl an der Suchdefinition von preg_replace, kann mir jemand sagen wie es aussehen muss?

Habe es auch mit "/('.*?)$/" versucht ging allerdings auch nicht
__________________
MFG
DJ Nuno
DJ Nuno ist offline  
Alt 20.10.2007, 17:15  
Erfahrener Benutzer
 
Benutzerbild von Montellese
 
Registriert seit: 30.07.2007
Beiträge: 541
Montellese befindet sich auf einem aufstrebenden Ast
Montellese eine Nachricht über MSN schicken
Standard

Hm kannst du dir den Inhalt von $text mal vor und nach dem nl2br() ausgeben lassen und hier den Quellcode posten?

Damit sollte es eigentlich nach dem nl2br() funktionieren:

Code:
/('.*?)<br>/
Aber Reguläre Ausdrücke sind immer so ne Sache ^^ Ausprobieren, ausprobieren und ausprobieren...
Montellese ist offline  
Alt 20.10.2007, 20:58  
Benutzer
 
Registriert seit: 02.10.2007
Beiträge: 52
DJ Nuno befindet sich auf einem aufstrebenden Ast
Standard

Habs hinbekommen,
hatte ne blitz idee (^_^)

Wenn man schon nicht das hochkomma erkennt dann wird einfach das hochkomma duch ein [c]' ersetzt, so bleibt das hochkomma erhalten und das [c] verschwindet

Hier der code der funktioniert:

PHP-Code:
<?
    
if(isset($_POST['Submit'])) {
        echo 
'<strong>Visual Basic Quelltext:</strong><br><br><font face="Courier New, Courier, monospace">';
        
$text htmlspecialchars($_POST['textarea']);
        
$text str_replace("\n""<br>"$text);
        
$text str_replace("\'""[c]'"$text);
        
$text preg_replace("/\[c](.*)\<br>/siU","<font color=\"#009900\" face=\"Courier New, Courier, monospace\">\\1</font><br>",$text); 
        echo 
$text;
        echo 
'</font>';
    }
?>
<br><hr><br>
<form name="form1" method="post" action="">
  <p>
    <textarea name="textarea" cols="80" rows="10"><? 
    $_POST
['textarea'] = str_replace("\'""'"$_POST['textarea']); 
    echo 
$_POST['textarea']; ?></textarea>
  </p>
  <p>
    <input type="submit" name="Submit" value="Senden">
  </p>
</form>
Vielen dank für die hilfe und die denkanstöße

[edit]
Eine kleine frage bleibt aber noch, es gibt soviel ich weiss auch in PHP ein funktion die einen String in Groß Buchstaben bzw. in Klein Buchstaben ausgibt.
Kann mir jemand noch sagen wie die funktion hieß?

Vielen dank im vorraus!

P.S. Werde den Fertigen code als Funktion in den Codeschnipseln posten falls es jemand brauchen sollte außer mir
[/edit]
__________________
MFG
DJ Nuno

Geändert von DJ Nuno (20.10.2007 um 21:03 Uhr).
DJ Nuno ist offline  
Alt 20.10.2007, 22:48  
Erfahrener Benutzer
 
Registriert seit: 14.10.2007
Beiträge: 306
PHP-Kenntnisse:
Fortgeschritten
Papst befindet sich auf einem aufstrebenden Ast
Standard

der Fehler war, dass nl2br() aus \n usw <br /> macht, nicht <br>
deswegen wurde die Zeile nicht erkannt.
folgendes hätte funktioniert:
PHP-Code:
<?php
$string 
preg_replace("#'(.*)(\r\n|\n|\r)#Uis", <span style="color: #090">1</span>", $string);
?>
Papst ist offline  
Alt 21.10.2007, 08:36  
Erfahrener Benutzer
 
Benutzerbild von Montellese
 
Registriert seit: 30.07.2007
Beiträge: 541
Montellese befindet sich auf einem aufstrebenden Ast
Montellese eine Nachricht über MSN schicken
Standard

Ich war mir nicht mehr sicher, ob nl2br() ein <br> oder ein <br /> macht, hätte aber eigentlich auch auf <br /> getippt, aber weil Nuno <br> genommen hat, hab ich gedacht, er hätte es sicher überprüft, obs stimmt ^^ Deshalb wollte ich auch, dass er den String mal hier postet nach dem nl2br()...

@Gross- und Kleinbuchstaben:
PHP: strtoupper - Manual
PHP: strtolower - Manual
Montellese ist offline  
Alt 21.10.2007, 11:19  
Benutzer
 
Registriert seit: 02.10.2007
Beiträge: 52
DJ Nuno befindet sich auf einem aufstrebenden Ast
Standard

Ja war auch teilweise mein fehler, hätte mir denken sollen das PHP die "richten" bzw. Aktuellen <br /> nimmt. naja ist ja nun gelösst und funktioniert das was ich jetzt noch machen muss ist halt die ganzen VB Befehle und Variablen hinzufügen.

Würde allerdings immernoch ganz gerne wissen welcher PHP befehl alle buchstaben eines strings in kleinburchstaben oder in großbuchstaben wandelt.

Danke im voraus
__________________
MFG
DJ Nuno
DJ Nuno ist offline  
Alt 21.10.2007, 15:21  
Erfahrener Benutzer
 
Benutzerbild von Montellese
 
Registriert seit: 30.07.2007
Beiträge: 541
Montellese befindet sich auf einem aufstrebenden Ast
Montellese eine Nachricht über MSN schicken
Standard

Wenn du meinen Post komplett gelesen hättest, wüsstest du es schon seit du ihn gelesen hast...
Montellese ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JS: Einführung - Javascript im Schichtenmodell nikosch Tutorials 4 11.04.2009 17:06
Gleichungs Captcha PHP litterauspirna PHP-Fortgeschrittene 17 25.05.2008 21:06
Design und Code Trennen TeazY PHP Tipps 2008 29 21.05.2008 12:08
Rekursive Funktion bricht ab... duras666 PHP Tipps 2008 9 28.04.2008 11:36
gpc_quotes funktion: verbesserungsvorschläge? Promaetheus PHP Tipps 2007 10 12.08.2007 19:29
Rückgabewert einer rekrusiven Funktion PHP-Fortgeschrittene 7 06.10.2005 18:44
Ist diese Funktion sicher? PHP-Fortgeschrittene 10 26.09.2005 12:53
[Erledigt] Code Funktion in Forum ermöglichen PHP-Fortgeschrittene 3 22.09.2005 11:57
(schnellere) Funktion zum Zusammenfassen von CSS PHP-Fortgeschrittene 21 08.08.2005 16:47
[Erledigt] JS Code in PHP Code?? HTML, Usability und Barrierefreiheit 12 08.08.2005 15:45
In einer Funktion auf eine Funktion der Klasse zugreifen phpbeginner PHP Tipps 2005-2 2 28.07.2005 00:30
code aus db mit eval replacen chief-thomson PHP Tipps 2005-2 4 08.07.2005 15:33
[Erledigt] Wie kann ich beliebig viele Werte an eine Funktion übergeben PHP Tipps 2005 11 25.01.2005 10:44
[Erledigt] bb code innerhalb von bb code geht nicht PHP Tipps 2007 2 12.01.2005 17:29
[Erledigt] sql syntax error in funktion, kann aber nix finden :( PHP Tipps 2004 10 20.07.2004 19:19

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
str_replace vb, vba str_replace, vb strreplace, visual basic text highlighting, $text = str_replace( php5 highlight_string(\' text editor vb, vba str replace, vb text highlighting, visual basic schrift highlighten, visual basic und echo php, vbs str_replace, str_replace vba, vba highlighter, highlighter vb, vb6 htmlspecialchars, highlighting html vb, \html highlighter\ visualbasic, visual basic highlight, visual basic text highlight, vb 2008 textinhalt highlighten, highlight_string echo in hochkommata

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




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum