Usando expressões regulares no vi

0

Quando escrevo uma entrada de blog no blog do Google, muitas entradas, como mostradas abaixo, são inseridas em HTML (não sei por que).

<span id="textmarked_8" name="textmarker_9" style="background-color: yellow;"></span>

Como faço para removê-los? Observe que os números 8 e 9 precisam ser substituídos por alguma expressão regular. Eu estou procurando um comando no vi ou algum outro comando fácil. BTW, estou usando o Ubuntu.

Obrigado.

    
por Praveen Sripati 30.07.2012 / 12:06

1 resposta

2

Você realmente deve usar um analisador de HTML, não um regex (consulte respostas anteriores sobre este assunto).

No entanto, se o XML tiver conteúdo e formatação completamente previsíveis, você poderá se safar com algo como

:%s/<span[^>]*><\/span>//

(não testado) O ponto importante aqui é que ele testa um elemento vazio que está na mesma linha. Você poderia adicionar um acento circunflexo (^) no início se os elementos de extensão indesejados sempre começassem no início de uma nova linha.

Se você quiser corresponder id="textmarked_[0-9]* você pode fazer isso, duvido que seja necessário. Qualquer elemento vazio provavelmente não serve para fins úteis, independentemente de seus atributos. A única exceção que posso imaginar é se algum javascript preencher esses elementos.

    
por 30.07.2012 / 12:32

Tags