News - Features - Downloads - Forum - Team - Support - Switch View: Screen
Login - Registrierung - Passwort vergessen

Antworten: 8
Seite [1]
Mindcrime


Geekboy





Beiträge: 1155
# Thema - 23.08.2011 um 13:09 Uhr
stufe1 +-


---------- Mindcrime schrieb: ----------
blup

[clip=stufe2]
---------- Jaja schrieb: ----------
blep

[clip=stufe3]
---------- Mindcrime schrieb: ----------
asdfasdf




[/clip]


[/clip]

Das problem mit die letze end clips heb ich behoben durch anstatt
$replace = preg_replace_callback("=\[clip\=(.*?)\](.*?)\[/clip\]=si","cs_abcode_clip",$replace);

zu verwenden (UNGREEDY)
$replace = preg_replace_callback("=\[clip\=([^\]]*?)\](.*?)\[/clip\]=siU","cs_abcode_clip",$replace);


Aber ich bekomm noch immer nicht mehrere clips in einander gezeigt...


Zuletzt editiert von Mindcrime am 23.08.2011 um 15:02 Uhr (1x Editiert)
Offline
hajo ClanSphere Team


VIP - Poster




Herkunft: Barsbüttel
Beiträge: 9411
# Antwort: 1 - 23.08.2011 um 16:06 Uhr
geht das deiner meinung nach denn mit ungreedy besser als das jetzige verhalten?


------------------
ClanSphere - professional clan care starts here

Inaktiv
|
Mindcrime
Thread-Ersteller


Geekboy





Beiträge: 1155
# Antwort: 2 - 23.08.2011 um 16:20 Uhr
Ja, dan nimmt er auf jeden fall schon den aussersten /clip....


Zuletzt editiert von Mindcrime am 23.08.2011 um 16:20 Uhr (1x Editiert)
Offline
|
hajo ClanSphere Team


VIP - Poster




Herkunft: Barsbüttel
Beiträge: 9411
# Antwort: 3 - 23.08.2011 um 17:07 Uhr
klingt gut, aber mehrere ineinander zu schachteln haben wir intern auch schon mehrfach probiert und es bislang nicht fehlerfrei hinbekommen, wenn du da mehr informationen / ideen zu findest gerne her damit.

die vorgeschlagene änderung commite ich wenns ok ist dann mal ins svn zu testzwecken um zu sehen, ob jemand dabei nebeneffekte bekommt, die eventuell auftreten.


------------------
ClanSphere - professional clan care starts here

Inaktiv
|
Mindcrime
Thread-Ersteller


Geekboy





Beiträge: 1155
# Antwort: 4 - 23.08.2011 um 18:07 Uhr
Das kommt weil ihr es an eine CSS klasse verbindet.
Man muss jeder clip eine eigene ID geben und ueber javascript (jquery) mit display an/aus diese ID anrufen...

Was ich nicht raffe ist wieso er nicht diese preg_replace_callback() mehrmals anruft...


Zuletzt editiert von Mindcrime am 23.08.2011 um 18:08 Uhr (1x Editiert)
Offline
|
hajo ClanSphere Team


VIP - Poster




Herkunft: Barsbüttel
Beiträge: 9411
# Antwort: 5 - 23.08.2011 um 19:46 Uhr
callbacks ineinander zu verschachteln ist gefährlich, sollte aber realisierbar sein, man müsste das wohl wie einen baum schrittweise zerlegen bzw im clip nach weiteren inneren suchen, bis keiner mehr da ist.


------------------
ClanSphere - professional clan care starts here

Inaktiv
|
SCHIRI ClanSphere Team


Weltmeister



Herkunft: Hamburg
Beiträge: 5299
# Antwort: 6 - 24.08.2011 um 00:49 Uhr
greedy macht probleme, wenn man zwei clips hintereinander packt.

Man muss entweder eine rekursive-Regexp benutzen und das ganze tokenizen.

Hatte ich in irgendeinem anderen Thread neulich schon geschrieben.


------------------
www.laszlokorte.de

Inaktiv
|
Mindcrime
Thread-Ersteller


Geekboy





Beiträge: 1155
# Antwort: 7 - 24.08.2011 um 09:48 Uhr
UNGREEDY! U ist fuer UNGREEDY, es schaut besser hin um genau diese probs zu verhindern...

Und ich mein natuerlich nested und recursiv...


Zuletzt editiert von Mindcrime am 24.08.2011 um 09:52 Uhr (1x Editiert)
Offline
|
SCHIRI ClanSphere Team


Weltmeister



Herkunft: Hamburg
Beiträge: 5299
# Antwort: 8 - 24.08.2011 um 15:05 Uhr
ok sorry, hatte mich verlesen.

aber egal ob greedy oder ungreedy, die regexp muss komplett geändert werden.

In sowas in der Art:


~\[clip\=([^\]]+)\](((?R)|(^\[/clip\]))*)\[/clip\]~si


------------------
www.laszlokorte.de

Zuletzt editiert von SCHIRI ClanSphere Team am 24.08.2011 um 15:05 Uhr (1x Editiert)
Inaktiv
|
Antworten: 8
Seite [1]


Sie müssen sich registrieren, um zu antworten.


ClanSphere Project - Mailus - Imprint - Disclaimer - Scriptinfo