Encontre perguntas (palavras antes de “?”) Regex Microsoft Word

0

Eu tenho vários livros que estão formatados incorretamente e contêm, entre outras coisas, PERGUNTAS e respostas.

Meu trabalho é fazer todas as perguntas CAPITALIZED AND BOLD. Estou usando o MS Word para manter as partes que já estão formatadas corretamente, então movê-lo para o Notepad ++ (por exemplo) e vice-versa é uma opção.

A única solução possível que imagino trabalhar é usar curingas para encontrar todas as palavras antes de "?" e depois, substituindo-os pelas opções de formatação já existentes na ferramenta de substituição do MS Word.

Então, alguém sabe como?

Como faço para encontrar perguntas (palavras antes de "?") usando Regex / curingas?

    
por Farang 07.01.2015 / 12:20

1 resposta

2

Aqui está uma macro que fará o que você quiser. Essa macro pressupõe que suas perguntas estão em seus próprios parágrafos. Se eles pudessem ser intercalados em um parágrafo, você poderia usar um loop while para continuar expandindo a seleção de caractere por caractere até atingir uma letra maiúscula, em vez de apenas expandir para o parágrafo inteiro.

Sub FormatQuestions() 'Finds everything that starts with a capital letter and ends with a question mark. Bolds it and puts it in all caps. 'Variable definitions Dim intTotalChars As Integer Dim intLoop As Integer Dim strTestChar As String Dim rngQuestionRange As Range Dim intCountQuestionMarks As Integer intTotalChars = ActiveDocument.Characters.Count For intLoop = 1 To intTotalChars strTestChar = ActiveDocument.Characters.Item(intLoop).Text If strTestChar = "?" Then intCountQuestionMarks = intCountQuestionMarks + 1 ActiveDocument.Characters.Item(intLoop).Select Selection.Expand wdParagraph Selection.Font.Bold = True Selection.Font.AllCaps = True End If Next intLoop End Sub

Em uma versão anterior dessa resposta, observei incorretamente que o Word não permite pesquisar marcas de parágrafo e curingas ao mesmo tempo. Na verdade, sim, mas você precisa usar ^ 13 para um parágrafo em vez de ^ p. (Esta página da Microsoft lista os caracteres especiais que podem ser usados com uma pesquisa de curinga: link )

    
por 08.01.2015 / 14:58