Hallihallo, hab mich hier schon lange nicht mehr gemeldet,
aber jetzt zum Problem, ich arbeite an einer ScriptEngine und sitze grade an den ifs...
Immoment sieht der If Regex so aus:
Hier prüfe ich einfach ob es ein if, elseif , else oder nichts von dem Vorkommt, das geht soweit auch alles, nur wenn ich if's schachteln will treten fehler auf:
Beispiel:
if(a<b){
if(a<c){
write "am kleinsten";
}
}
Normal müsste ja die äusere klammer zu dem äuseren If gehören, ich habe das mal farbig gemacht...
er macht aber
if(a<b){
if(a<c){
write "am kleinsten";
}
}
wie ihr sehen könnt nimmt der die erst beste möglichkeit die klammer zu schließen, das ist logischerweiße falsch, ich erhalte jetzt ein halbes if in einem if und eine verwaiste klammer...
was kann ich da tun?
MfG Desmu
aber jetzt zum Problem, ich arbeite an einer ScriptEngine und sitze grade an den ifs...
Immoment sieht der If Regex so aus:
Code:
~(?:(if\((.*)\)\{(.*)\})|(elseif\((.*)\)\{(.*)\})|(else\{(.*)\})|(.*)\;)~isU
Beispiel:
if(a<b){
if(a<c){
write "am kleinsten";
}
}
Normal müsste ja die äusere klammer zu dem äuseren If gehören, ich habe das mal farbig gemacht...
er macht aber
if(a<b){
if(a<c){
write "am kleinsten";
}
}
wie ihr sehen könnt nimmt der die erst beste möglichkeit die klammer zu schließen, das ist logischerweiße falsch, ich erhalte jetzt ein halbes if in einem if und eine verwaiste klammer...
was kann ich da tun?
MfG Desmu
Kommentar