Regular Expressions in MS Access VBA?
Solution 1
You can use the VBScript Regex Object by adding a reference to the Microsoft VBScript Regular Expressions library.
Example usage:
Dim szLine As String
Dim regex As New RegExp
Dim colregmatch As MatchCollection
With regex
.MultiLine = False
.Global = True
.IgnoreCase = False
End With
szLine = "Analyzed range (from-to) 10 100"
regex.Pattern = "^Analyzed range"
If regex.Test(szLine) Then
regex.Pattern = ".*?([0-9]+).*?([0-9]+)"
Set colregmatch = regex.Execute(szLine)
'From
Debug.Print colregmatch.Item(0).submatches.Item(0)
'To
Debug.Print colregmatch.Item(0).submatches.Item(1)
End If
Source: http://mark.biek.org/blog/2009/01/regular-expressions-in-vba/
Solution 2
You can use CreateObject("vbscript.regexp")
or just reference the scripting library.
Benjamin Brauer
Professional Freelance Software Developer based in Berlin Area, Germany experienced mainly in Microsoft Technologies (.Net, SQL Server, Office VBA) and Fullstack Web Development on LAMP and ASP.Net
Updated on June 27, 2020Comments
-
Benjamin Brauer almost 4 years
I definitely like MS Access as an RAD-Tool for small-scope data-driven applications. But one thing I really miss as a .Net-Developer is Regular Expressions. They really come in handy when validating user input. I really do not know why Microsoft did not put these in the standard VBA-Library.
Is there a way to use Regular Expressions in MS Access VBA?