Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Checking string for predefined format
Message
 
 
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
00403485
Message ID:
00404963
Views:
17
>>>>>
oRegExp=CREATEOBJ('vbscript.regexp')
>>>>>oRegExp.Pattern = '\d{6}[A-Z]-[A-Z]\d{6}[A-Z]-[A-Z]\d{6}[A-Z]{2}-[A-Z]{2}\d{6}[A-Z]'
>>>>>? oRegExp.Test('012345A-B012345C-D012345EF-GH012345I')
>>>>>? oRegExp.Test('012345A-b012345C-D012345EF-GH012345I')
>>>>
>>>>Great, Ed. Thanks a lot. One little problem: [A-Z] could be also space, e.g.
>>>>in mask: lcMask = "999999X-X999999X-X999999XX-XX999999X"
>>>>X could be upper alpha or space.
>>>
>>>Like this is difficult? Change [A-Z] to [A-Z ]
>>>
>>>This is definitely a case of RTFM; you neeed to read the docs to see what all the capabilities are.
>>
>>Yes, I'm reading :)
>>
>>lcAPN = "000000 - 001000 - 000000 - 000000"
>>oRegExp=CREATEOBJ('vbscript.regexp')
>>oRegExp.Pattern = '\d{6}[A-Z ]-[A-Z ]\d{6}[A-Z ]-[A-Z ]\d{6}[A-Z ]{2}-[A-Z ]{2}\d{6}[A-Z ]'
>>? oRegExp.Test(lcApn) && .F. - should be .T.
>
>No it shouldn't - the trailing character that would match [A-Z ] in the last position is not present - you trimmed or excluded it. This is definitely a case of RTFM.

Ok, this seems to be the syntax for my lcMask: (though I may be wrong)
oRegExp.Pattern = '\d{6}[A-Z ]-[A-Z ]\d{6}[A-Z ]-[A-Z ]\d{6}[A-Z ]{2}-[A-Z ]{2}\d{6}[A-Z ]{0,1}'
If it's not broken, fix it until it is.


My Blog
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform