Michael Bahr
jedi at fellspt.charm.net
Wed Mar 15 13:21:36 CST 2006
Joe, here is a modified function that uses regular expression I created in Access 2000. I removed my specific stuff and added a couple possible patterns for you. You will need to finish the rest but this should get you going. I would strongly suggest using the debugger to step through the lines to confirm it is working. Set the following variables in the debugger: regexMatch matches(0).submatches(0) matches(0).submatches(1) myValue desc pn Change rst to match your query or table and change .Fields("zzz") at the beginning of while loop. ' ' ' Function myRegex() As Boolean Dim regex As Object Dim rst As DAO.Recordset Dim desc As String, pn As String, myValue As String Dim regexMatch As Boolean Dim matches As Variant Set rst = CurrentDb.OpenRecordset("qryYourQry") Set regex = CreateObject("VBScript.RegExp") regexMatch = True regex.Global = True regex.ignorecase = True With rst .MoveFirst While (Not .EOF) desc = .Fields("Description") pn = .Fields("PartNumber") ' one of these patterns should work for to capture ' at start of line digit-char space digit-char regex.pattern = "(^(\d+[a-z]+\s+\d+[a-z]+))" regex.pattern = "(^([0-9a-z ]+))" regexMatch = regex.test(pn) If (regexMatch) Then ' matche(s) from part number Set matches = regex.Execute(pn) ' get last match myValue = matches(0).submatches(1) ' do your work on the captured value ' save your changes in another field .Edit .Fields("Value") = myValue .Update End If .MoveNext Wend .Close End With Set regex = Nothing Set rst = Nothing End Function Goodluck, Mike... On Wed, 15 Mar 2006, Joe Rojas wrote: > How can I add the ability to use regular expression in Access 2000? > > **Background** > We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. > One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". > My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. > > Anyone have a better idea? > > Thanks, > Joe Rojas > IT Manager > TNCO, Inc. > 781-447-6661 x7506 > jrojas at tnco-inc.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com >