Vim Expressões regulares

Vim Expressões regulares
Expressões regulares (ou regexps para curta) são ferramentas usadas para alterar o texto e os dados. Eles não estão disponíveis como um produto independente, mas como parte de um software ou utilidade. Unix Grep, um programa que procura arquivos por linhas que se encaixam em um padrão, é o exemplo mais conhecido. Os regexps podem ser considerados uma linguagem de padrão sofisticada. Os regexps são extremamente úteis e podem minimizar drasticamente a quantidade de tempo necessária para concluir tarefas tediosas de edição de texto.

Expressões regulares parecem estar rapidamente ganhando favor entre os usuários do VIM enquanto aprendem sobre a incrível capacidade de programação que eles podem trazer. A sintaxe de Vim difere um pouco dos perl's, mas está perto o suficiente. Como resultado, os usuários do VIM podem se beneficiar dos exemplos de expressão regular do Perl. Neste artigo, discutiremos as expressões regulares mais usadas no VIM com exemplos. Vamos começar.

Aqui temos um arquivo chamado MyFile que tem todas as peças com as quais queremos lidar, então a primeira coisa que faremos é a pesquisa e substituição global, então isso é muito fácil. Em primeiro lugar, abriremos este arquivo com este comando.

$ vim myfile

Tipo de cólon. Isso o levará ao modo de linha de comando e por percentual, todas as linhas no substituto do arquivo. Podemos fazer algo realmente simples, como substituir todos os casos em que você vê IND com LAS, por exemplo, então esse é o tipo de substituição mais fácil.

Este comando fará as mudanças. Você pode comparar a seguinte captura de tela com a primeira a observar que o IND é substituído por LAS.

Existem muitas outras maneiras de usar a pesquisa e a substituição, então provavelmente todo mundo sabe aqui é se você inserir seu modo de linha visual (pressione Shift+V).

Selecionamos um bloco de texto e substituímos o INC por LAS; Por exemplo, se pressionarmos Q e Colon, podemos editar isso e dizer que também queremos mudar em todos os lugares que você vê dub para las.

Esse é o tipo de demonstração mais fácil de pesquisa e substituição para que você possa fazer várias maneiras diferentes de ser o tipo de arquivo inteiro com porcentagem que você pode especificar quando está escolhendo um intervalo aqui e olha para Ele diz automaticamente que você sabe o que você selecionou com apóstrofo menos que um apóstrofo maior do que você também pode especificar um intervalo específico.

Agora podemos dizer na linha dois à linha sete, substitua o Eng pelo RST.

Deixando de lado o texto, agora podemos considerar todos os lugares onde há um zero, e vamos substituí -lo por um.

Você pode notar que isso apenas destacou a primeira partida, então existem muitos na linha relativa dois lá em cima; Você pode ver que temos muitos zeros extras; Existem bandeiras que você pode emitir, por exemplo, G para fazer todas as partidas por linha.

Isso é muito útil se você estiver programando porque pode ter várias instâncias de uma variável na mesma linha, mas também pode dar confirmação cada vez que o que pode fazer com C as flexões de C para confirmar, então você diz sim ( pressione y) quero substituir esse e não (pressione n) se você não quiser substituir um determinado dígito. Quando terminar, você sabe que pode passar pelo conjunto de partidas que pode pressionar Q, e essas substituições serão feitas.

Esta é a visão mais breve e talvez a maneira mais básica de usar o comando substituto. Existem caracteres especiais para substituir onde você não deseja necessariamente especificar exatamente qual é a sua correspondência digitando -a, por exemplo, se dizemos encontrar todos os lugares onde há um personagem de palavra, para que seja algo que seja uma carta e não Um espaço basicamente para que personagens espaciais com s e dígitos com D se você quiser corresponder a um conjunto deles, por exemplo, você pode especificar quantos, se você quiser corresponder quatro deles por vez, então agora você verá que temos que temos Apenas grupos de quatro, também queremos dizer apenas me dê se houver um ou mais barra mais, então este será todos os casos em que você tem um ou mais dígitos em uma linha.

Há "S" e Capital "S", que correspondiam a personagens espaciais que incluem seus espaços, suas guias e novas linhas; Existem os caracteres de dígitos de 0 a 9 ou não caracteres de dígitos que seriam capitais d minúsculos D sendo os caracteres dígitos, e então você tem sua palavra ou não caracteres de palavras que é algo que não é espaço, então esse é o seu tipo de substituição mais útil comandos e geralmente como usá -los.

Outras coisas são úteis em expressões regulares. Por exemplo, digamos que se você quiser substituir todos os casos em que você tem espaço americano zero por algo.

Esta é uma maneira boa de resolver esse problema, mas se você usar muito mágica, que é esta / v. Vamos apenas assumir que não está aqui, e faremos um que seja mágico aqui.

Aqui está o espaço americano e fecha, então há a nossa partida. Então combinaríamos com isso, ou vamos fazer dessa maneira, vamos combinar os zeros, porque existem alguns desses. Queremos substituir aqueles pelo mesmo espaço americano, e aqui faríamos barragem 1, e agora conhece o espaço americano e segue isso com um 3, então agora passamos do American Space 0 para o American Space 3.

Aqui está outro exemplo para dar a você quando você deseja manter um pouco da sua correspondência, mas você não necessariamente sabe o que é ou como será formatado ou pode ser diferente de uma linha para a próxima, mas neste caso, O que você quer fazer é que você diria a eles para iniciarem as linhas que dizem americano, mas não querem iniciar a partida até aqui ZS e depois dizer um dígito e depois terminar a partida e vamos substituir por três.

Conclusão

Nós fizemos isso; Esta tem sido uma breve visão geral das expressões regulares. Tópicos que abordamos são como selecionar faixas de substituição, o que os metacaracters são ou melhor, super caracteres para espaço e dígitos, como fazer grupos de captura, como especificar o início e o fim de uma partida e depois como selecionar intervalos Usando expressões regulares que você pode fazer facilmente em seus programas.