php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.10.2006, 21:44  
Neuer Benutzer
 
Registriert seit: 04.05.2005
Beiträge: 11
Anduril
Standard Regex löscht alle Zeilenumbrüche.

1. Die Suche hab ich benutzt, aber nix hilfreiches gefunden.

2. Ich habs net so mit Regex, darum meine Frage.

Ich wollt mir ne Funktion machen, die den Text bei der Ausgabe formatiert.
Also z.B. alle BB Codes umwandelt, kein HTML zulässt, usw.

Ging auch ganz gut.

Dann wollte ich auch noch machen, dass er mir unnötig viele Zeilenumbrüche löscht.

Also wenn einer z.B. schreibt:

Zitat:
blablab




balblab
Soll nachher das stehen:

Zitat:
blablab

balblab
Es soll einfach den riesen zwischenraum löschen und eine einzige zeile leer lassen.

Jetzt hab ich das mit Regex versucht, doch das Problem ist, dass er mir jetzt alle Zeilenumbrüche löscht.

Also wenn ich z.B. sowas schreibe:

Zitat:
Kritzel Kritzel Kritzel

Kritzel Kritzel Kritzel
Und ich lasse dort bewusst eine Zeile abstand, weils besser aussieht, schiebt er mir alles zusammen:

Zitat:

Kritzel Kritzel Kritzel
Kritzel Kritzel Kritzel
Der Code sieht so aus:

Code:
$str = preg_replace('/(\s{2})\s+/', '\1', $str);

Wie Krieg ich das hin, dass er mir nicht alle Zeilenumbrüche weg macht?

Geht das Überhaupt, oder soll ich es lieber sein lassen?

Besten Dank.
Anduril ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 16.10.2006, 22:25  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

wenn du genau drüber nachdenks hast du ja noch einen zeilenumbruch. hat also funktioniert.
übrigens schließt \s auch Leerzeichen mit ein, außerdem besteht der zeilenumbruch bei windows aus zwei zeichen: \r und \n, also solltest du noch etwas weiterbasteln...
nikosch ist offline  
Alt 16.10.2006, 22:29  
Neuer Benutzer
 
Registriert seit: 04.05.2005
Beiträge: 11
Anduril
Standard

Ja, sry, war falsch formuliert.

2 Zeilenumbrüche möcht ich.

Also dass er mir da zwei
rein macht.
Anduril ist offline  
Alt 16.10.2006, 22:36  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Wie gesagt, 3 Leerzeichen in Folge ergeben in Deinem regExp eben auch 2 Zeilenumbrüche. Und da nach deinem 1. Kritzel Kritzel Kritzel ein Leerzeichen steht wird das wohl der Fehler sein. Also ersetze \s durch sinnvolle Kombinationen aus \n , \r und \040 und \011 und du bist einen großen Schritt weiter.
nikosch 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
Array sortieren mit regex Lupi PHP Tipps 2008 3 21.07.2008 15:17
Regex: Auslesen der Meta-Tags einer Webseite Sucheingrenzung pepe24 PHP Tipps 2008 12 31.05.2008 15:41
2 Regex in PHP kompatible Syntax übersetzen NoiZy PHP-Fortgeschrittene 6 07.04.2008 09:04
Regex Link Problem Broadcast PHP Tipps 2008 2 29.02.2008 16:30
Gierig/nicht gieriger Regex Papst PHP Tipps 2008 22 02.12.2007 20:15
[gelöst :D ] regex tuts nur einmal pro zeile notyyy PHP Tipps 2008 17 24.09.2007 15:40
RegEx für Mail-Adresse (Bitte prüfen!) vollkommenegal PHP Tipps 2006 13 20.11.2006 20:02
ACCEPT-ENCODING: gzip, regex ermittlung Andreas PHP-Fortgeschrittene 7 04.02.2006 16:52
habe ein paar fragen zu REGEX imported_kremser PHP Tipps 2006 11 31.01.2006 15:30
RegEx findet Stringvorkommen nicht PHP Tipps 2007 6 08.12.2005 21:52
regex Funktion PHP Tipps 2005-2 6 18.06.2005 02:46
Suche ein bestimmtes Regex Chr!s PHP Tipps 2005 5 21.05.2005 12:01
Regex für attribute in quelltexten robo47 PHP Tipps 2005 6 27.01.2005 18:29
Regex über mehrere zeilen PHP-Fortgeschrittene 3 25.12.2004 16:48
[Erledigt] Regex für selektives Replacement PHP-Fortgeschrittene 2 25.12.2004 15:57

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
regex zeilenumbruch entfernen, regex zeilenumbrüche entfernen, reguläre ausdrücke zeilenumbruch entfernen, regex zeilenumbruch löschen, regular expression zeilenumbruch löschen, regex zeilenumbruch ersetzen, regex zeilenumbruch, regulärer ausdruck zeilenumbruch entfernen, reguläre ausdrücke zeilenumbrüche entfernen, regular expression zeilenumbruch ersetzen, http://www.php.de/php-tipps-2006/42537-regex-loescht-alle-zeilenumbrueche.html, regexp zeilenumbruch löschen, regular expression zeilenumbruch entfernen, zeilenumbruch entfernen regex, zeilenumbruch regex entfernen, php regex zeilenumbrüche entfernen, regex zeilenumbrüche, regular expression zeilenumbruch, regexp zeilenumbruch entfernen, regulärer ausdruck zeilenumbruch löschen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:19 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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.