casamento = er.exec(texto); if (casamento) { texto = texto.replace(er, '\a1$&\a2'); num_casamentos = (texto.split(/\a1/g).length - 1); } } catch (e) { document.getElementById('er').style.backgroundColor = colorRegexNok; } // escape texto = texto.HTMLescape(); // highlight texto = texto.replace(/\a1/g, ''); texto = texto.replace(/\a2/g, ''); // show document.getElementById('resultado').innerHTML = texto || '-vazio-'; // So mostra conteudo dos grupos se casou somente uma vez, pra nao confundir. if (casamento && num_casamentos === 1 && casamento.length > 1) { grupos_html = ''; for (i = 1; i < casamento.length; i++) { if (casamento[i] !== undefined) { grupos_html += '' + casamento[i] + ''; } } grupos_html += ''; document.getElementById('gruposlista').innerHTML = grupos_html; document.getElementById('grupos').style.display = 'block'; } else { document.getElementById('gruposlista').innerHTML = ''; document.getElementById('grupos').style.display = 'none'; }}function carregar(er, texto) { document.getElementById('er').value = er; document.getElementById('texto').value = texto; casar();}function carregar_exemplo(i) { var texto, proximo, anterior, max, errata; window.location.hash = '#' + i; texto = exemplos[i][3]; if (exemplos[i].length === 5) { errata = 'ERRATA: ' + exemplos[i][4]; } if (typeof texto !== 'string') { texto = texto.join('\n'); // array2string, multiline } document.getElementById('er').value = exemplos[i][2]; document.getElementById('errata').innerHTML = errata || ''; document.getElementById('texto').value = texto; document.getElementById('num_pagina').innerHTML = exemplos[i][1]; anterior = i - 1; proximo = i + 1; max = exemplos.length; if (anterior === 0) { anterior = max - 1; } if (proximo === max) { proximo = 1; } document.getElementById('anterior').href = 'javascript:carregar_exemplo('+ anterior + ')'; document.getElementById('proximo').href = 'javascript:carregar_exemplo('+ proximo + ')'; // // mostrar nome (er) dos exemplos // document.getElementById('anterior').innerHTML = exemplos[i - 1][2].HTMLescape(); // document.getElementById('proximo').innerHTML = exemplos[i + 1][2].HTMLescape(); casar();}function carregar_texto(i) { document.getElementById('texto').value = textos[i]; casar();}function gera_exemplos() { var i, html, capitulo_ant, pagina_ant, capitulo, pagina; // init capitulo_ant = pagina_ant = capitulo = pagina = 0; // compose html = ['']; for (i = 0; i < exemplos.length; i++) { capitulo = exemplos[i][0]; pagina = exemplos[i][1]; if (capitulo !== capitulo_ant || pagina !== pagina_ant) { html.push('Pagina ' + pagina + ': '); capitulo_ant = capitulo; pagina_ant = pagina; } html.push('' + exemplos[i][2].HTMLescape() + ' • '); } html.push('Fim.'); html.push(''); // show document.getElementById('exemplos').innerHTML = html.join('\n');}function mostra_exemplos() { var container, label; container = document.getElementById('exemplos'); label = document.getElementById('flipflop'); if (container.style.display === 'block') { container.style.display = 'none'; label.innerHTML = flipflopLabelShow; } else { container.style.display = 'block'; label.innerHTML = flipflopLabelHide; } return false;}function init() { var n; // #number at URL? if (window.location.hash) { n = parseInt(window.location.hash.replace(/[^0-9]/g, ''), 10); } else { n = 1; } carregar_exemplo(n); document.getElementById('flipflop').onclick = mostra_exemplos; document.getElementById('flipflop').innerHTML = flipflopLabelShow; gera_exemplos(); // delayed, since it's hidden }window.onload = init;Liga o JavaScript!Exemplos interativos do livro Expressoes Regulares Texto original Resultado Grupos: Anterior | Este exemplo esta na pagina 0 do livro | Proximo tweetmeme_source = 'oreio'; Voltar para o site do livrovar gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));var pageTracker = _gat._getTracker("UA-280222-9");pageTracker._trackPageview();