wizz99: regular expressions

Beitrag lesen

Ich möchte behaupten, dass sich Optionen (wenn es denn solche überhaupt gibt) in PHP bei den erweiterten regulären Ausdrücken (extended regex) nicht angeben lassen, nur bei den Perl-kompatiblen (PCRE).

es gibt solche optionen/modifiers, allerdings wirklich nur PCRE.

zitat:

U (PCRE_UNGREEDY)
This modifier inverts the "greediness" of the quantifiers so that they are not greedy by default, but become greedy if followed by "?". It is not compatible with Perl. It can also be set by a (?U) modifier setting within the pattern.

aber auch mit eregi_replace ist es möglich, das ganze "ungreedy" zu machen. wenn ich den inhalt eines tags rausbekommen will, dann frag ich das ganze ja so ab: "<[^>]*>", also: zeige mir alles was zwischen "<" und ">" steht, und zwar ohne dass ">" dazwischen nochmal vorkommt. und das selbe würd ich jetzt gerne so machen, dass eben "</SPAN>" nicht vorkommen darf. nur geht das nicht mit [^</SPAN>], weil das mehrere zeichen sind.

kann man nicht irgendwie sagen, dass ein *string* ("</SPAN>") nicht vorkommen darf? oder geht das tatsächlich nur mit einzelnen zeichen?

vielen dank,
wizz99