Perguntas com a marcação «regular-expression»

Expressões regulares (geralmente abreviadas para "regex") são expressões escritas em uma linguagem declarativa usada para corresponder padrões dentro de strings.

3
Encontre e substitua usando expressões regulares
Eu tenho um arquivo com vários padrões de usuário. Quero alterar parte do texto, mas estou tendo dificuldades para encontrar um substituto e um correspondente. Usando o seguinte exemplo: ############################################################################### # Trackpad, mouse, keyboard, Bluetooth accessories, and input # ############################################################################### # Trackpad: enable tap to click for this user and …

2
É possível procurar no sistema regex do vim?
Eu encontrei muitas situações no vim em que seria útil ter instruções detalhadas. Eu tentei usar a sintaxe de lookaround padrão ( (?=), (?!)etc.) , mas parece que o vim não suporta isso. O vim tem uma sintaxe equivalente para esses tipos de instruções?


3
Como fazer com que os regex matchers não sejam gananciosos?
Estou tentando usar um regex para substituir o texto em um arquivo (substitua um URL completo por apenas protocol / domain /): :%s/\(https\?:\/\/.*?\/\).*/\1/gc Infelizmente .*?, não corresponde à string, mesmo tentando escapar do ?quantificador? Como o quantificador não ganancioso deve ser escapado no vim?

5
Padrão de sintaxe Vim para destacar o argumento da palavra-chave python
Estou tendo dificuldades para aprender regexps do vim (também não conheço nenhum outro regexp muito bem), então o principal problema é definir o regexp que corresponda some_function_call(simple_value, keyword=value) palavra-chave neste exemplo. Por isso, deve corresponder a uma palavra se estiver dentro de parênteses e tiver um sinal de igual após …

1
Por que o regex do Vim não permite mais de 9 grupos de captura?
A partir :h E65podemos ver que Vim não permite mais de 9 grupos de captura em um comando de substituição. Por exemplo, o seguinte comando funcionará: s/\v(a)(b)(c)(d)(e)(f)(g)(h)(i)/\9\8\7\6\5\4\3\2\1 Mas este com mais um grupo de captura falhará: s/\v(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)/\10\9\8\7\6\5\4\3\2\1 Minha pergunta não é sobre por que falha (é um limite rígido do …






1
Dobrando pelo padrão de pesquisa regex
Eu tenho um arquivo de texto sem formatação com colunas de valores separadas por espaço em branco. Como isso: AU 3030 .... ... .... AU 3031 .... ... .... AU 3032 .... ... .... AU 3033 .... ... .... IT 48100 ... .. ..... IT 40100 ... .. ..... IT …


11
Substitua a segunda ocorrência on-line
Eu tenho uma lista de arquivos: ./a.temp.txt ./a.temp.txt ./a/b.temp.txt ./a/b.temp.txt ./a/b/c.temp.txt ./a/b/c.temp.txt E eu quero remover o temp.em cada linha, mas apenas a segunda ocorrência , assim, o arquivo deve se parecer com: ./a.temp.txt ./a.txt ./a/b.temp.txt ./a/b.txt ./a/b/c.temp.txt ./a/b/c.txt Como devo fazer isso?


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.