I'm looking for a regex in VBscript that I can use on a ArcMap table. I know what it would look like in python:
pat =r'[0-9]{3,4}'
This filters all numeric characters from the string which have the length 3 to 4. So from AO123 you'd get 123 and from VO2-324C, 324.
What would be the equivalent in VBScript? How do I implement it with the RexExp Object? ArcGIS has a Field calculator that let's you execute VBScript code. But even the most simple regex (see screenshot) fails with the error message object needed: 're'.
Answer
The error is because you have not initialized the RegExp Object using CreateObject
. I am getting results with the below script.
Pre-Logic VBA Script Code
Set re = CreateObject("VBScript.RegExp")
With re
.Pattern = "[0-9]{3,4}"
.Global = False
.IgnoreCase = False
End With
targetString = [OUDE_NAAM] 'your field here
Final Result Variable
re.Execute(targetString).Item(0)
No comments:
Post a Comment