Frage zu preg_replace

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
UGC

Frage zu preg_replace

Beitrag von UGC »

Hallo, ich wollte mal fragen, ob der TEil in preg_replace (.?*) für ganze Sätze genommen werden kann, oder nur für ein Wort, bzw. eine Zusammenhängede Buchstabenkombination.

Edit: wenn man vor einen zu suchenden Tag (.?*) stehen hat, muss dort dann etwas sein?
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

(.?*) geht schonmal gar nicht :P Wenn dann (.*?)

Zur Erklärung:
. steht für ein beliebiges Zeichen
* steht dafür, wie viel es sein dürfen, und zwar für 0 Zeichen oder beliebig viele mehr
? begrenzt die suche bzw. macht das jenes Muster nicht mehr gierig ist, sprich wenn (.*?)< da steht bricht er beim ersten gefunden < ab. Ansonsten beim Letztem.

Wenn du anstatt (.*?) das (.+?) schreibst, heisst es suche min 1 Zeichen und beliebig viele mehr.

(.*?) = Findet alles, auch nix
(.+?) = Findet es nur wenn min. 1 Zeichen da exestiert
([a-z]+) = Findet alle kleingeschrieben Buchstaben*
([A-Z]+) = Findet alle grossgeschriebenen Buchstaben*
([a-zA-Z]+) = Findet alle Buchstaben*
([a-zöäüß]+) = Findet alle kleingeschrieben Buchstaben + ö, ä, ü und ß
([0-9]+) = Findet alle Zahlen
([0-9]{1,2}) = Findet zwei oder eine belibiege Zahl
([0-9]{,2}) = Findet zwei Zahlen
([0-9]{2,}) = Findet min. 2 Zahlen und beliebig viele mehr.
([0-9a-zA-Z]{2,8}) = Findet min. 2 maximal 8 Zeichen, welche nur aus Buchstaben und Zahlen bestehen dürfen.

* = ohne Sonderzeichen

Das sollte als kleine Hilfe reichen.
Ansonsten: http://de.wikipedia.org/wiki/Regulärer_Ausdruck
UGC

Beitrag von UGC »

danke
Antworten

Zurück zu „Coding & Technik“