Esta é uma expressão regular para corresponder a todos os anos entre 1900 e 2015
\s((19[0-9][0-9])|(200[0-9])|(201[0-5]))\s
- A estrutura básica é
((first_range) OR (second_range) OR (third_range))
- Usamos um OR
|
lógico para permitir três intervalos-
(19[0-9][0-9]
vai de 1900 a 1999 -
(200[0-9])
vai de 2000 a 2009 -
(201[0-5])
vai de 2010 a 2015
-
-
\s
procura espaços em branco antes e depois de uma correspondência. Isso evita números negativos
Infelizmente, você não pode usar esse padrão no Localizar & Substitua o diálogo . Você tem que abrir seu editor de VBA ( ALT + F11 ) e colar a macro abaixo. Execute com F5
Uma janela de entrada aparecerá quando você inserir seu padrão RegEx. A macro conta todas as ocorrências e as destaca se você escolher
Sub RegexReplace()
Dim RegEx As Object
Set RegEx = CreateObject("VBScript.RegExp")
'On Error Resume Next
RegEx.Global = True
RegEx.Pattern = InputBox("Enter your regex pattern to find and count")
Set Matches = RegEx.Execute(ActiveDocument.Range)
answer = MsgBox("There are " & Matches.Count & " occurances" & vbCrLf & _
"Highlight them?", vbYesNo)
If answer = vbYes Then
For Each hit In Matches
ActiveDocument.Range(hit.FirstIndex, hit.FirstIndex + hit.Length). _
HighlightColorIndex = wdYellow
Next hit
End If
End Sub