
Necesita buscar y eliminar todos los números que tengan solo 3 dígitos, e ignorar los números de 1 a 2 y más de 4 dígitos (si le sirve de ayuda, el tercer dígito va seguido de texto sin espacios entre ellos, por ejemplo, "457text"). ¡¡¡Agradezco mucho cualquier ayuda!!!
Respuesta1
Puede hacer esto en Word (es decir, sin secuencias de comandos) con un comodín para buscar y reemplazar. Si 3 dígitos siempre van seguidos de una letra:
o si desea permitir cualquier carácter (por ejemplo, puntuación), puede excluir que el cuarto carácter sea un dígito con una variación:
En ambos ejemplos, en la sección Buscar, los corchetes indican partes: queremos encontrar los 3 dígitos al comienzo de una "palabra" como primera parte, y encontrar solo aquellos donde el siguiente carácter es una letra, es decir, la segunda. parte que queremos conservar.
Reemplazar con \2 significa que "reemplazamos" nuestro texto encontrado (p. ej., 123A) con solo la parte "A" (el resto del texto que sigue sin cambios no forma parte del resultado de "buscar").
< significa comienzo de palabra, es decir, queremos que los 3 dígitos estén al comienzo de la palabra pero no queremos seleccionar 3 dígitos a mitad de una secuencia más larga (por ejemplo, ignorar 12345 al no encontrar 345 dentro de él).
Los corchetes son un rango de caracteres, por lo que [0-9] significa cualquier dígito del 0 al 9 y {3} significa una secuencia de 3 de esos caracteres. La [A-Za-z] significa cualquier letra minúscula o mayúscula. La opción alternativa con [!0-9] encuentra todo excepto (! no es) los dígitos del 0 al 9.
Respuesta2
Sí, puedes hacer esto con un script VBA. Para abrir el Editor VBA presione ALT + F11 al mismo tiempo. Ingrese el siguiente código en el Editor VBA
Sub RegexReplace()
Dim RegEx As Object
Set RegEx = CreateObject("VBScript.RegExp")
On Error Resume Next
RegEx.Global = True
RegEx.Pattern = InputBox("[0-9][0-9][0-9]")
ActiveDocument.Range = _
RegEx.Replace(ActiveDocument.Range, InputBox(""))
End Sub