Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #13  
Old 01-07-2025, 01:37 PM
batman1 batman1 is offline Find Challenge Windows 11 Find Challenge Office 2013
Advanced Beginner
 
Join Date: Jan 2025
Posts: 57
batman1 is on a distinguished road
Default

Quote:
Originally Posted by gmaxey View Post
'Note the addition of parens "()" around the y element will result in a submatch.
This is Backreferences.

With Backreferences:
1. You can use submatch
2. You can refer to an earlier group later in the Pattern ()
3. You can use submatch in REPLACE

Note 1.
You already use it in your code.

Note 2.
Pattern = "([A-Za-z]+) \1"

Pattern = <series1><space><series2>, where <series1> and <series2> are identical

E.g. Pattern = "([A-Za-z]+) \1" will find "a a", "John John". If .IgnoreCase = True then it will also find "A a"

a Pattern = "([A-Za-z]+) ([A-Za-z]+) \2 \1" will find "Jack Sprat Sprat Jack

Note 3.

In Repace we don't use \1, \2, … We use $1, $2, …
Code:
Sub test2()
Dim RegEx As Object, Matches As Object, Match As Object, text As String
    text = "Fellow John John is a good student. Fellow Jack Jack also"
    
    Debug.Print text
    
    Set RegEx = CreateObject("VBScript.RegExp")
    With RegEx
        .Global = True
        .Pattern = "([A-Za-z]+) \1"
        If .test(text) Then
            text = .Replace(text, "$1") ' in every place in string Text where a result is found, that result is replaced with its $1
            
            Debug.Print text
            
        End If
    End With
    
    text = "John Smith is a good student. Jack Sprat also"
    With RegEx
        .Global = True
        .Pattern = "([A-Z][a-z]+) ([A-Z][a-z]+)"
        If .test(text) Then
            text = .Replace(text, "$2 $1")
            
            Debug.Print text
            
        End If
    End With
End Sub
Reply With Quote
 



Similar Threads
Thread Thread Starter Forum Replies Last Post
Any work-around for this challenge RRB Word 6 08-22-2023 11:47 AM
Formula challenge 3 criteria JMC44 Excel Programming 0 04-04-2015 07:38 PM
Find Challenge Challenge for a genius ? e.roberts Office 3 07-13-2012 01:36 AM
Find Challenge Sorting Challenge gbaker Excel Programming 11 06-22-2012 09:39 AM
Find Challenge Word Challenge jpotter2 Word 3 03-22-2011 02:07 PM

Other Forums: Access Forums

All times are GMT -7. The time now is 08:15 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Search Engine Optimisation provided by DragonByte SEO (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
MSOfficeForums.com is not affiliated with Microsoft