Hallo.
Ich habe eine Frage zu Regulären Ausdrücken. Hierzu folgendes Szenario, welches ich zur Entwicklung eines Plugins benötige.
Ich habe einen String, welcher im Moment nach folgenden Ausdrücken sucht:
{slider id="1" title="Enter Title" direction="0"}..Enter Text..{sliderEnd}
anschließend werden die Werte von title, direction und der Inhalt dazwischen weiterverarbeitet. Problem hierbei ist, dass das schließende Tag ({sliderEnd}) nicht dem öffnenden zugeordent ist und ich somit keine Verschachtelungen erstellen kann.
Ich möchte nun meinen Ausdruck wie folgt umbauen:
{slider id="1" title="Enter Title" direction="0"}..Enter Text..{sliderEnd id="1"}
und suche hierzu nun den passenden Regex, damit auch folgendes möglich ist:
{slider id="1" title="Enter Title" direction="0"}
{slider id="2" title="Enter Title" direction="0"}..Enter Text..{sliderEnd id="2"}
{sliderEnd id="1"}
Ich hoffe, ich habe mich verständlich ausgedrückt und danke im Voraus für hilfreiche Anregungen.
Gruß Stephan
Ich habe eine Frage zu Regulären Ausdrücken. Hierzu folgendes Szenario, welches ich zur Entwicklung eines Plugins benötige.
Ich habe einen String, welcher im Moment nach folgenden Ausdrücken sucht:
{slider id="1" title="Enter Title" direction="0"}..Enter Text..{sliderEnd}
PHP-Code:
const PATTERN = '/[\{]{1}slider(\s+(id)="([^"]+)"){1}(\s+(title)="([^"]+)"){1}(\s+(direction)="([^"]+)"){1}(\s+(active)="([^"]+)")?(\s+(cssSuffix)="([^"]+)")?(\s+(desc)="([^"]+)")?(\s+(closeDep)="([^"]+)")?(\s+(duration)="([^"]+)")?([\}]{1})(.*)([\{]{1}sliderEnd[\}]{1})/sU';
Ich möchte nun meinen Ausdruck wie folgt umbauen:
{slider id="1" title="Enter Title" direction="0"}..Enter Text..{sliderEnd id="1"}
und suche hierzu nun den passenden Regex, damit auch folgendes möglich ist:
{slider id="1" title="Enter Title" direction="0"}
{slider id="2" title="Enter Title" direction="0"}..Enter Text..{sliderEnd id="2"}
{sliderEnd id="1"}
Ich hoffe, ich habe mich verständlich ausgedrückt und danke im Voraus für hilfreiche Anregungen.
Gruß Stephan
Kommentar