Como posso pesquisar expressões regulares em páginas da Web usando o Google Chrome ou o IE?

55

Como posso pesquisar por expressões regulares como 'foo | bar' em páginas da Web usando o Google Chrome ou o IE? Estou ciente da extensão "Regular Expression Searcher", mas não funciona para mim. (Nada acontece quando eu clico em barra.) Os comentários na loja on-line indicam que esse é um problema comum para muitos usuários.

    
por Sarah 27.04.2012 / 23:58

9 respostas

32

Usando o Javascript para corresponder às expressões regulares

Talvez você queira tentar isso no console do chrome:

var p=/.*(regu).+?\ /gi; console.log( document.body.innerText.match(p) );

Apenas abra o console , copie e cole acima para console e pressione enter . Você pode testá-lo aqui nesta página.
Isso pode ser melhorado se couber.

Aqui, imprimimos em índices de correspondência de console e texto correspondente. Aqui nós tentamos combinar o texto que contém regu , 20 caracteres antes (ou menos se o início da linha) e 10 caracteres depois (ou menos se eol).

var p=/.{0,20}regu[^ \n]+[^\n]{0,10}/gi;
while (m = p.exec(document.body.innerText)) { 
    console.log( 'Index: '+m.index+' Match: '+m ); }

Além disso, tente isso, pintará o plano de fundo de todas as correspondências na página vermelho , o rexexp não é perfeito, mas pelo menos não deve atrapalhar com tags HTML:

var p=/(\>{1}[^\n\<]*?)([^\n\<]{0,30}regu[^\n\<]{0,10})/gi,b=document.body;
b.innerHTML=b.innerHTML.replace(p,'$1<span style="background-color:red;">$2</span>');

Marcando isto:

Outra maneira de usar isso é através do protocolo javascript: (o mesmo código acima):

javascript:(function(){var p=/(\>{1}[^\n\<]*?)([^\n\<]{0,30}regu[^\n\<]{0,10})/gi,b=document.body;b.innerHTML=b.innerHTML.replace(p,'$1<span style="background-color:red;">$2</span>');})();

Por exemplo, usando o protocolo javascript: , é possível inserir uma pequena caixa de pesquisa em qualquer página da web para pesquisar regexp's.
Eu acho que você já sabe que regexp simples também pode ser usado para remover fósforos vermelhos da página.
Se eu continuar a desenvolvê-lo por mais algumas horas, talvez tenhamos um plugin de pesquisa que se encaixa no marcador :)

    
por 07.05.2012 / 22:04
4

Pesquisa de expressões regulares do Google Chrome.

A simple search utility that allows you to search a web page using regular expression.

Features under development

  • toggle through found results
  • improved UI
  • toggle between case sensitivity
  • create shortcut for toggling the extension
  • Allow pressing "Enter" key when searching (instead of clicking on search button)

Important Notes
This is a page action extension so it won't work right away on the page you have already opened. I recommend restart your browser before start using this extension. You can also try to refresh your opened page.

    
por 29.04.2012 / 04:03
3

As outras extensões mencionadas não funcionaram para mim, então eu escrevi minha própria extensão de cromo de código aberto que você pode experimentar aqui: link

O código-fonte está disponível no github: link

    
por 24.07.2013 / 05:19
1

No modo Ferramentas do Google Chrome Developer, digite ctrl + deslocamento + F (no Windows, não tenho certeza sobre outro SO).

Existe uma opção reg-ex para pesquisar. Isso irá procurar todos os arquivos, então ele incluirá a fonte JavaScript. Não tenho certeza (como) você pode limitá-lo apenas para HTML.

    
por 14.11.2015 / 22:58
1

No Chrome no macOS, segure Alt + Comando + I para abrir o Developer Tools, selecione o código fonte HTML da página (em na aba "Sources"), segure o comando + F para procurar, e selecione o símbolo .* (Regex).

Se você precisar pesquisar somente texto, poderá usar pandoc para converter HTML em texto sem formatação:

$ pandoc https://superuser.com/questions/417875 -t plain -o tmp.txt

E, em seguida, use less para pesquisar com Regex (pesquisa com / ).

    
por 01.09.2017 / 05:01
0

não é realmente uma pesquisa, mas eu achei esse marcador de expressão regular (que achei em algum lugar) bastante útil e funciona para todos os navegadores.

javascript:(function(){var%20count=0,%20text,%20regexp;text=prompt(%22Search%20regexp:%22,%20%22%22);if(text==null%20||%20text.length==0)return;try{regexp=new%20RegExp(%22(%22%20+%20text%20+%22)%22,%20%22i%22);}catch(er){alert(%22Unable%20to%20create%20regular%20expression%20using%20text%20'%22+text+%22'.\n\n%22+er);return;}function%20searchWithinNode(node,%20re){var%20pos,%20skip,%20spannode,%20middlebit,%20endbit,%20middleclone;skip=0;if(%20node.nodeType==3%20){pos=node.data.search(re);if(pos%3E=0){spannode=document.createElement(%22SPAN%22);spannode.style.backgroundColor=%22yellow%22;middlebit=node.splitText(pos);endbit=middlebit.splitText(RegExp.$1.length);middleclone=middlebit.cloneNode(true);spannode.appendChild(middleclone);middlebit.parentNode.replaceChild(spannode,middlebit);++count;skip=1;}}else%20if(%20node.nodeType==1%20&&%20node.childNodes%20&&%20node.tagName.toUpperCase()!=%22SCRIPT%22%20&&%20node.tagName.toUpperCase!=%22STYLE%22){for%20(var%20child=0;%20child%20%3C%20node.childNodes.length;%20++child){child=child+searchWithinNode(node.childNodes[child],%20re);}}return%20skip;}window.status=%22Searching%20for%20%22+regexp+%22...%22;searchWithinNode(document.body,%20regexp);window.status=%22Found%20%22+count+%22%20match%22+(count==1?%22%22:%22es%22)+%22%20for%20%22+regexp+%22.%22;})();
    
por 01.05.2012 / 20:15
0

A extensão Find + tem boas críticas e ainda não foi mencionada: link

Eu testei e funciona muito bem e tem uma interface simples e clara.

Pode pesquisar texto em elementos HTML. Os outros que eu tentei não conseguiram fazer isso.

    
por 13.06.2018 / 00:19
0

Gostaria de sugerir este plugin do Chrome.

    
por 12.09.2018 / 10:58
-1

Vá para javascript: void ((função () {b = document.body; b.innerHTML = b.innerHTML.replace (new RegExp (" ( > {1} [^ \ n \ <] *?) ([^ \ n \ <] {0,30} "+ prompt (" Por favor introduza a expressão regular para procurar. ") +" [^ \ n \ <] {0,10}) "," g "), '$ 1' + prompt ('Por favor digite o texto antes das ocorrências.') + '$ 2' + prompt ('Por favor, digite o texto para colocar após as ocorrências. '))}) ()) '.

    
por 17.11.2015 / 16:06