O OmegaT oferece um grande leque de funções avançadas de busca.
Para acessar a janela de busca, pressione Ctrl+F e digite a palavra ou frase que quer localizar na caixa de texto "Buscar por".
Uma outra forma é selecionar uma palavra ou frase no texto destino do segmento aberto (chamado de campo de edição ou campo destino) e pressionar Ctrl+F. Neste caso, a palavra ou frase é inserida automaticamente na caixa "Buscar por".
Para cada busca será aberta uma nova janela. Se esquecer de fechá-las, ficará com diversas janelas de busca abertas.
As buscas são feitas nos segmentos fonte e destino de um projeto.
Selecione o local usando as caixas de seleção.
É possível selecionar diversos locais para sua busca:
Neste último caso, o OmegaT somente pesquisará os arquivos que pode ler (Veja Formatos de arquivos compatíveis).
Selecione o método usando as opções.
Há dois métodos para realizar as buscas:
Para qualquer um desses dois métodos é possível selecionar as três seguintes opções:
Uma busca exata procura por uma frase, isto é, se forem fornecidas diversas palavras elas serão localizadas somente se ocorrerem exatamente na mesma seqüência. As buscas exatas são similares a uma pesquisa por "frase exata" em um dispositivo de busca na Internet, como o Google.
Selecione "busca de palavra-chave" e digite qualquer quantidade de palavras individuais, separadas por espaços e em qualquer seqüência; o OmegaT exibe uma lista de todos os segmentos nos quais todas as palavras aparecem. As buscas de palavra-chave são similares à pesquisa "com todas as palavras" em um dispositivo de busca na Internet, como o Google (lógica AND).
Tanto na busca exata como na busca de palavra-chave pode-se usar os curingas '*' e '?'. Para usar curingas, verifique se a opção expressões regulares não está selecionada; caso contrário, esses caracteres serão interpretados como caracteres especiais (metacaracteres) da expressão regular.
O curinga '?' substitui qualquer caractere único, isto é, 'be?a' encontrará ocorrências de 'beca' e 'bela'. O curinga '*' substitui um ou vários caracteres, isto é 'be*a' encontrará ocorrências de 'beca', 'bela', 'beata' e 'bebida'.
Se quiser fazer buscas por segmentos contendo esses caracteres, será necessário ativar expressões regulares e deixar de lado esses caracteres acrescentando a eles uma barra invertida ('\'), isto é 'x\*y' para localizar ocorrências de 'x*y' e 'x\?y' para localizar ocorrências de 'x?y'.
A busca usando expressões regulares é uma excelente maneira de localizar ocorrências de uma seqüência de caracteres e palavras (string). É similar à busca normal, porém com muito mais flexibilidade. Estão disponíveis na Internet tutoriais simples, como por exemplo o http://www.regular-expressions.info/quickstart.html.
As expressões regulares usadas em buscas são aquelas suportadas pelo Java. Se precisar de informações específicas, consulte http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html.
| Elaborar | Correspondências |
|---|---|
| Flags | |
| (?i) | Ativa correspondências que ignoram maiúsculas e minúsculas (o padrão predefinido faz a distinção entre maiúsculas e minúsculas). |
| Caracteres | |
| x | O caractere x, exceto o seguinte... |
| \uhhhh | O caractere com valor hexadecimal 0xhhhh |
| \t | O caractere de tabulação ('\u0009') |
| \n | O caractere de nova linha (alimentação de linha) ('\u000A') |
| \r | O caractere de retornar ao início da linha ('\u000D') |
| Escapar | |
| \ | Nada, mas escapa o caractere seguinte. Isto é necessário se você quiser inserir quaisquer metacaracteres !$()*+.<>?[\]^{|} para corresponder a eles mesmos. |
| \\ | Por exemplo, este é um caractere de barra invertida |
| \Q | Nada, mas escapa todos os caracteres até \E |
| \E | Nada, mas finaliza o escape iniciado pelo \Q |
| Classes de caracteres | |
| [abc] | a, b, ou c (classe simples) |
| [^abc] | Qualquer caractere exceto a, b, ou c (negação) |
| [a-zA-Z] | a até z ou A até Z, inclusive (intervalo) |
| Classes de caracteres predefinidas | |
| . | Qualquer caractere (exceto para terminadores de linha) |
| \d | Um dígito: [0-9] |
| \D | Um caractere que não seja dígito: [^0-9] |
| \s | Um caractere de espaçamento: [ \t\n\x0B\f\r] |
| \S | Um caractere que não seja de espaçamento: [^\s] |
| \w | Um caractere de palavra: [a-zA-Z_0-9] |
| \W | Um caractere que não seja de palavra: [^\w] |
| Correspondentes de limite (borda) | |
| ^ | O início de uma linha |
| $ | O final de uma linha |
| \b | Limite de uma palavra |
| \B | Limite que não seja de palavra |
| Quantificadores vorazes (gulosos ou possessivos) | |
Eles farão o maior número de correspondências possíveis. Por exemplo, a+ corresponderá a aaa em aaabbb | |
| X? | X, uma ou nenhuma |
| X* | X, zero ou mais vezes |
| X+ | X, uma ou mais vezes |
| Quantificadores relutantes (não-vorazes) | |
Eles farão o menor número possível de correspondências. Por exemplo, a+? corresponderá o primeiro a em aaabbb | |
| X?? | X, uma ou nenhuma |
| X*? | X, zero ou mais vezes |
| X+? | X, uma ou mais vezes |
| Operadores lógicos | |
| XY | X seguido por Y |
| X|Y | Ou X ou Y |
| (XY) | XY como um grupo único |