[Gambas-user] Select Case problem

Benoît Minisini gambas at ...1...
Thu Mar 28 10:57:34 CET 2013


Le 28/03/2013 07:47, Bruce a écrit :
> On Thu, 2013-03-28 at 17:05 +1030, Bruce wrote:
>> Hi,
>>
>> I am trying to parse a text file that contains key,value pairs like:
>>          Name=Malarky
>>          Size=10
>>          BackImage[N]=sometext
>>          FrontImage[S]=sometext
>>          etc
>> using a construct like
>>          For idx = 0 to sourcearray.max
>>            Select Upper(Split(SourceArray[idx],"+")[0])
>>              Case "NAME"
>>                blah blah
>>              Case "SIZE"
>>                blah blah
>>              Case Like "BACKIMAGE[*]"
>>                blah blah
>>              Case Like "FRONTIMAGE[*]"
>>                blah blah
>>            End Select
>>          Next
>>
>> This fails because Case Like "BACKIMAGE[*]" is being interpreted as a
>> regular expression where I need to escape the regexp "[]" meaning.
>>
>> Trying to use escapes like
>>    Case Like "BACKIMAGE\[*\]"
>> fails as \[ is an unknown escape sequence.
>>
>> Any clues?
>>
>> tia
>> Bruce
>>
>
> Sorry, I have over simplified that.  I also need to discern lines like
>          BACKIMAGE[*]
> from lines like
>          BACKIMAGE[*][*]
> so
>          Like "BACKIMAGE*"
> wont work.
>
> B
>

Case "BACKIMAGE[[]*]"
Case "BACKIMAGE[[]*][[]*]"

Is that what you want?

Escaping '[' character in regular expression is done by using "[[]" or 
"\\[". (see the documentation of LIKE).

Regards,

-- 
Benoît Minisini




More information about the User mailing list