Ik ben bezig met een template parser met if then else statements erin.
Deze wil ik parsen met een regular expression.
Dan wil ik uiteraard kijk of een statement true is.
ik heb dan in de templatefile bv:
If (variabele 1 == variabele 2) { variabel 1 is gelijk aan nummertje 2!!! }
Dan wil ik dat parsen dmv een reg exp:
Maar ik hij kijkt nu of de string uit Match.SubMatches(0) gelijk is aan de string van Match.SubMatches(1).
Ik wil echter dat hij de variabele die hetzelfde heet als de inhoud van Match.SubMatches(0) vergelijkt met de variabele die hetzelfde heet als Match.SubMatches(1).
Voorbeeld:
template file:
If (variabele1 == variabele2) { variabel 1 is gelijk aan nummertje 2!!! }
inhoud vars:
variabele1 == "1"
variabele2 == "1"
uiteindelijk moet hij het nu neer zetten dat ze gelijk zijn.
Wat hij echt doet is: de string variabele1 is niet gelijk aan variabele2 dus is het ongelijk..
Weet iemand hoe ik de WAARDE in variabele1 kan vergelijken met de WAARDE in variabele2?
Ik ben al meerdere keren tegen dit probleem aangelopen.. maar steeds vond ik wel een andere manier om het op te lossen... Dit keer echter niet
Deze wil ik parsen met een regular expression.
Dan wil ik uiteraard kijk of een statement true is.
ik heb dan in de templatefile bv:
If (variabele 1 == variabele 2) { variabel 1 is gelijk aan nummertje 2!!! }
Dan wil ik dat parsen dmv een reg exp:
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| Function emNewRegExp(spattern, bglobal, bignorecase) Dim rx Set rx = New RegExp rx.Pattern = spattern rx.Global = bglobal rx.IgnoreCase = bignorecase Set emNewRegExp = rx Set rx = Nothing End Function Set rx = emNewRegExp("if \((.*?)==(.*?)\){(.*?)}", True, True) Set Matches = rx.Execute(str) For Each Match in Matches if not Match.SubMatches(0) = Match.SubMatches(1) then Match.Value = "" end if Next |
Maar ik hij kijkt nu of de string uit Match.SubMatches(0) gelijk is aan de string van Match.SubMatches(1).
Ik wil echter dat hij de variabele die hetzelfde heet als de inhoud van Match.SubMatches(0) vergelijkt met de variabele die hetzelfde heet als Match.SubMatches(1).
Voorbeeld:
template file:
If (variabele1 == variabele2) { variabel 1 is gelijk aan nummertje 2!!! }
inhoud vars:
variabele1 == "1"
variabele2 == "1"
uiteindelijk moet hij het nu neer zetten dat ze gelijk zijn.
Wat hij echt doet is: de string variabele1 is niet gelijk aan variabele2 dus is het ongelijk..
Weet iemand hoe ik de WAARDE in variabele1 kan vergelijken met de WAARDE in variabele2?
Ik ben al meerdere keren tegen dit probleem aangelopen.. maar steeds vond ik wel een andere manier om het op te lossen... Dit keer echter niet
[ Voor 5% gewijzigd door Mischa_NL op 12-03-2005 20:11 ]