Hallo,
ich möchte in einem Text Parameter einer VBScript-Befehlszeile erkennen.
Nachdem ich anfänglich (und fälschlicherweise) angenommen hatte, dass dies
überhaupt kein Problem sei, steh ich nun da und brauch Hilfe ;)
Ein paar Beispiele:
Method parameter1, parameter2, parameter3
Method(parameter1, parameter2, parameter3)
Response.Write parameter1
.Write parameter1
obj. Write+2
Write.2
Write Mid("x.y", 2.5, 3)
Collection (Abs(-2.6) + 6 ). GetFile ( "C:\xyz.txt" ).methodX param1, param2
NoCollection (Abs(-2.6) + 6) / 2
x m2(6) = false
x = m( xyz )
x = m2(6) = false
Es geht nun darum, die Parameter als Ganzes zu erkennen - in den ersten
beiden Zeilen wäre das "parameter1, parameter2, parameter3" - also der Teil,
der eingeklammert werden könnte. (ob in der 2. Zeile die Klammern dabei
wären oder nicht, ist egal).
Bei Zuweisungen wie in den letzten beiden Zeilen muss nichts erkannt werden
bzw. wenn, dann der gesamte rechte Teil der Zuweisung.
Ich kann nicht genau sagen, was da so alles ankommt. Sichergestellt ist nur,
dass es gültige VBScript-Befehlszeilen sind. Ausgefiltert werden
VBScript-Anweisungen wie if-then- oder while-Anweisungen. Zuweisungen könnte
ich auch noch vorher ausfiltern.
Große Probleme bereiten mir vor allem die Zeilen mit Collection und
NoCollection.
Wie macht ein Interpreter so was? Der muss ja auch den Unterschied zwischen
Befehl und Parameter erkennen - und das so schnell als Möglich. Das ist im
WSH ja auch nicht wirklich langsam. Konnte mich über die Geschwindigkeit von
ASP eigentlich nur selten beklagen...
Bei mir kommt es allerdings weniger auf die Geschwindigkeit an. Daher sind
auch komplexe Abläufe vollkommen OK ;)
Programmiert wird in C# - übersetzen kann ich aber ;)
Hat da wer eine Idee für mich...
Viele Grüße, Wolfgang
_______________________________________________
Coffeehouse Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/coffeehouse