Advertisement
Guest User

Laurent Raufaste

a guest
Jan 25th, 2010
294
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.86 KB | None | 0 0
  1. <?php
  2. $original = '
  3. <script></samp> ou <samp><form></samp>. Rien à redire, c\'est la règle du jeu.</p><p>
  4.    Il <b>remplace tous les &quelquechose; par leur valeur</b> et ça, c\'est pas glop du tout. Que <samp>&eacute;</samp> devienne <q>é</q>, ma foi pourquoi pas, c\'est plus lisible. Mais que
  5.    <samp>&nbsp;</samp> devienne un espace ordinaire, que <samp>&lt;</samp> soit remplacé par <q><</q>, ça c\'est vraiment pas glop. En version 1 FCKedit faisait l\'inverse : <q>é</q>
  6.    devenait <samp>&eacute;</samp> et ainsi de suite.
  7.  </p>
  8.  <p>
  9.    Il va même – j\'ai découvert ça récemment – jusqu\'à rajouter à la fin un <samp>span</samp> invisible et nommé, en toute candeur, <q>anti bug fck</q> !
  10.  </p>
  11.  <h3>
  12.    Les gens soigneux prennent le taureau par les cornes
  13.  </h3>
  14.  <p>
  15.    Et décident de préparer lers articles tranquillement sur leur micro, avec un éditeur de texte. Oui mais, toutes les saletés, les &truc; et les <machin>, il faut se les taper à la
  16.    mimine ?
  17.  </p>
  18.  <p>
  19.    Oui et non : les &truc; un peu rares que <samp>&oelig;</samp> ou <samp>&Agrave;</samp> oui, je les tape au fur et à mesure. Pour tout ce qui est espaces insécables et
  20.    ponctuation, je procède inversement : je tape des espaces ordinaires avant les ? ! : ; sans souci particulier. Ensuite, ultra-moderne, j\'utilise la fonction
  21.    rechercher/remplacer de l\'éditeur pour mettre <samp>&nbsp;?</samp> à la place de <samp> ?</samp> … Grandiose, non ? Chronométrage : pour l\'article que vous êtes en train
  22.    de lire, ça vient de me demander 50 secondes.
  23.  <p>
  24.    Et le balisage ? Un peu pareil : les balises occasionnelles se tapent au fil de l\'eau. Truc déjà donné ailleurs pour ne pas oublier de refermer : taper d\'abord le couple <q>balise
  25.    ouvrante - balise fermante</q> puis remplir l\'intervalle. Si vous utilisez Notepad++ vous pouvez même le régler pour qu\'il écrive la balise fermante dès que vous terminez la balise ouvrante,
  26.    laissant le curseur entre les deux – TRÈS commode. Pour les paragraphes (tous mes articles sont organisés en paragraphes) c\'est assez simple : pendant la rédaction, je tape de braves retours
  27.    à la ligne comme avec un traitement de texte. Ensuite : une balise <samp><p></samp> au tout début du premier paragraphe puis, à la fin de ce premier paragraphe, un couple
  28.    <samp></p><p></samp>pour terminer le paragraphe et ouvrir le suivant. Ce couple est ensuite copié/collé partout où c\'est nécessaire. Bien sûr, la toute dernière balise
  29.    <samp><p></samp> qui ouvrirait un paragraphe vide est à supprimer. Chronométrage du processus sur le présent article 
  30. ';
  31.  
  32. echo ini_get('pcre.backtrack_limit')."\n";
  33. echo strlen($original)."\n";
  34. $result = preg_replace('/<script.*>.*<\/script>/s', '', $original);
  35. if ($result === null)
  36. {
  37.     if (preg_last_error() === PREG_BACKTRACK_LIMIT_ERROR)
  38.     {
  39.         echo "Error: PREG_BACKTRACK_LIMIT_ERROR\n";
  40.     }
  41. }
  42.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement