Niouzes.org  

Précédent   Niouzes.org > Forum > Newsgroup microsoft.public.fr.* 3 Forum > Newsgroup microsoft.public.fr.dotnet.csharp
S'inscrire FAQ Membres Calendrier Recherche Messages du jour Marquer les forums comme lus



Réponse

 

LinkBack Outils de la discussion Modes d'affichage
  #1 (permalink)  
Vieux 12/08/2007, 14h14
Wernight
 
Messages: n/a
Par défaut Regex qui bloquent l'application

Voici un code Ã*** mettre dans une simple application C# depuis Visual Studio
qui fait que l'application bloque sur la dernière expression. Le problème
semble venir des "(.|\r|\n)+".

J'ai entendu que dans certains cas le temps devient exponentiel. La je vois
mal comment cela peut mettre autant de temps alors qu'un simple ".+" avec
l'option RegexOptions.Singleline fonctionne en un millième de seconde. A
noter que la vitesse est la même avec un groupe non capturant (?:...).

J'espère que cela sera corrigé ou amélioré, au moins dans le cas d'un
RegexOptions.Compiled.

Code source:

// Hang for:
string content = "<HTML>\r\n<HEAD>\r\n<TITLE>Grande broche Art
Deco strass Mouche</TITLE>\r\n</HEAD>\r\n<!-- #45866-06//-->\r\n<BODY
BACKGROUND=\"http://www.pierre-bex.com/ima/lace.gif\" BGCOLOR=\"#FAF0DC\"
TEXT=\"#000000\" LINK=\"#700000\" ALINK=\"#FF0000\"
VLINK=\"#B00000\"><CENTER><BR>\r\n<B><BIG>Grande broche Art Deco strass
Mouche</BIG></B>\r\n<P>\r\n<BR>Cette grande broche de style Art-Deco a été
fabriquée en France par Pierre-Bex.\r\n<BR>Elle possède un fermoir Ã***
l'ancienne avec sécurité,\r\n<BR>est en cuivre argenté avec des strass de
cristal et a une largeur de 6 cm.\r\n<P><IMG
SRC=\"http://www.pierre-bex.com/lpb/45866-06.jpg\">\r\n<P><FONT
COLOR=\"purple\"><B>Frais d'emballage et d'expédition:</B><BR><BR>Les frais
d'emballage et d'expédition de cet objet sont de <B>4 Euros</B> pour un envoi
postal avec suivi pour la France métropolitaine.<BR>\r\nPour l'étranger, ces
frais sont de 4 Euros pour un envoi simple dans l'union européenne et de 6
Euros pour tous les autres pays.<BR><BR>Toutes les pièces sont envoyés sous
48 heures dans un emballage de protection sécurisé et
adapté.\r\n<BR><BR><B>Réductions sur les frais de livraison:</B><BR><BR>Les
frais d'envoi de tout article supplémentaire<BR> expédié en même temps seront
réduits Ã*** <B>1 Euro</B> seulement.\r\n<BR><BR>Les commandes sont envoyées dès
réception de votre règlement.<BR>\r\nPour une expédition rapide, nous mettons
Ã*** votre disposition notre serveur avec paiement sécurisé en ligne
(SSL)\r\n<BR>acceptant les cartes bancaires Visa, MasterCard et
AmericanExpress.\r\n<BR>Nous acceptons aussi <B>PayPal</B> sans surcharge de
prix.</FONT>\r\n<P><TABLE WIDTH=\"90%\" ALIGN=\"CENTER\" CELLPADDING=\"3\"
CELLSPACING=\"0\" STYLE=\"border-style:solid; border-width:0px;
border-color:#AA00AA; border-collapse:collapse;\"><TR ALIGN=\"CENTER\"
BGCOLOR=\"#FFFFEF\"><TD WIDTH=\"30%\" STYLE=\"border-style:solid;
border-width:1px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;
font-weight: bold;\">Paiements</TD><TD WIDTH=\"30%\"
STYLE=\"border-style:solid; border-width:1px; font-family: Arial, Helvetica,
sans-serif; font-size: 12px; font-weight: bold;\">Livraison</TD><TD
WIDTH=\"30%\" STYLE=\"border-style:solid; border-width:1px; font-family:
Arial, Helvetica, sans-serif; font-size: 12px; font-weight:
bold;\">Conditions de retour</TD></TR><TR><TD WIDTH=\"30%\" ALIGN=\"CENTER\"
VALIGN=\"top\" STYLE=\"border-style:solid; border-width:1px;
border-color:#AA00AA; font-family: Arial, Helvetica, sans-serif; font-size:
10px;\"><IMG SRC=\"http://www.libertys.com/ima/cards-eb.gif\" WIDTH=\"154\"
HEIGHT=\"34\" BORDER=\"0\" ALT=\"Notre paiement en ligne SSL
sécurisé\"><BR><BR>+ Chèques Français<BR><IMG
SRC=\"http://www.libertys.com/ima/pp-nosur.gif\" ALT=\"PayPal accepté sans
surcharge de prix\"><BR></TD><TD WIDTH=\"30%\" ALIGN=\"CENTER\"
VALIGN=\"top\" STYLE=\"border-style:solid; border-width:1px;
border-color:#AA00AA; font-family: Arial, Helvetica, sans-serif; font-size:
10px;\">Nous envoyons votre commande sous 24h Ã*** 48h Ã*** réception de votre
paiement.<BR><BR>Le délai moyen de livraison constaté pour la France est de 2
Ã*** 3 jours.</TD><TD WIDTH=\"30%\" ALIGN=\"CENTER\" VALIGN=\"top\"
STYLE=\"border-style:solid; border-width:1px; border-color:#AA00AA;
font-family: Arial, Helvetica, sans-serif; font-size: 10px;\">Satisfait ou
remboursé :<BR><BR>Vous disposez d’un délai de 7 jours pour nous retourner le
produit et être intégralement remboursé, hors frais de
port.</TD></TR></TABLE>\r\n<P><A
HREF=\"http://www.pierre-bex.com/pbexdf.htm\"><B>Plus plus de détails sur les
bijoux Pierre-Bex, cliquez ici</B></A><BR><BR>\r\n<A
HREF=\"mailtoierre-bex***pierre-bex.com\"><B>Cliquez ici pour nous envoyer un
e-mail</B></A><BR>\r\n<A
HREF=\"http://search-desc.ebay.fr/search/search.dll?MfcISAPICommand=GetResult&ht=1&ebaytag1 =ebayreg&query=Pierre-Bex+France%2E&search_option=1&srchdesc=y&st=1&Sort Property=MetaEndSort\"TARGET=\"_blank\"><B>Regarde z
les autres objets en vente sur eBay France</B></A><BR>\r\n<A
HREF=\"http://www.pierre-bex.com/pb-ebayf.htm\"><B>Cliquez ici pour plus
d'informations sur nos conditions de vente</B></A><BR>\r\n<P><B>MERCI pour
vos enchères</B><BR>\r\n</CENTER></BODY></HTML>\r\n<!-- RESERVE: 15.00 Euro
-->133782\r\n\r\n<TR>\r\n<TD WIDTH=\"11%\" CLASS=\"ab10e\">F#</TD>\r\n<TD
WIDTH=\"12%\" CLASS=\"bb10e\"><A
HREF=\"pbex/lpb/45866-06.jpg\">45866-06</A></TD>\r\n<TD WIDTH=\"55%\"
CLASS=\"a10e\">Grande broche Art Deco strass Mouche</TD>\r\n<TD WIDTH=\"13%\"
CLASS=\"db10e\">15.00 Euro</TD><TD WIDTH=\"8%\"
CLASS=\"ab10e\"></TD>\r\n</TR>\r\n\r\n";

string escapedMatchingExpression =
"<TITLE>(?<Titre>[^<]+?)</TITLE>\\r\\n</HEAD>\\r\\n<!--\\
\\#(?<Ref>[0-9A-Za-z-]+?)//-->\\r\\n(?<Junk>(.|\\r|\\n)+?)\\r\\n<P><IMG\\
SRC=\"(?<ImageUrl>[^\"]+?)\">\\r\\n(?<Junk>(.|\\r|\\n)+?)\\r\\n<!--\\
RESERVE:\\ (?<Prix>[0-9,]+?)\\ (?<Junk>(.|\\r|\\n)+?)\\
-->(?<Categorie>[0-9]+?)\\r\\n\\r\\n<TR>\\r\\n<TD\\ WIDTH=\"11%\"\\
CLASS=\"ab10e\">F\\#</TD>";

Regex regex = new Regex(escapedMatchingExpression,
RegexOptions.ExplicitCapture | RegexOptions.Multiline |
RegexOptions.Compiled);

bool resultNeverComes = regex.IsMatch(content);
Réponse avec citation
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Niouzes.org
Standard Sponsored Links

Réponse
Tags: , ,



Outils de la discussion
Modes d'affichage

Règles de messages
Vous pouvez ouvrir de nouvelles discussions : nonoui
Vous pouvez envoyer des réponses : nonoui
Vous pouvez insérer des pièces jointes : nonoui
Vous pouvez modifier vos messages : nonoui

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Discussions similaires

Discussion Auteur Forum Réponses Dernier message
Les handicapés bloquent le Tour, la police les expulse : Jean Girardeau Newsgroup fr.misc.handicap 10 26/07/2008 15h29
Re: Les handicapés bloquent le Tour, la police les expulse casagui Newsgroup fr.soc.politique 17 24/07/2008 12h06
Re: Les handicapés bloquent le Tour, la police les expulse casagui Newsgroup fr.soc.politique 7 23/07/2008 12h22
Re: Marre des cheminots qui bloquent la France Rachida Newsgroup fr.soc.politique 0 03/06/2008 20h08
Fenêtres pop up qui se bloquent luc Newsgroup microsoft.public.fr.ie6 1 16/07/2007 08h33


Fuseau horaire GMT. Il est actuellement 23h48.

Italiano - German - English - Español


Édité par : vBulletin® version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0 © 2007, Crawlability, Inc. Tous droits réservés.
Version française #13 par l'association vBulletin francophone


Politique - Droit - Philosophie - Football - Medicine - Française - Bricolage - Photo - Mac Os X - Divers - Physique - Jardinage
Mecanique - Moto - Photographie - Rail - Route - Aviation - Cinema - Linux - Psychanalyse - Finance - Enigmes - Rugby
Environnement - Histoire - Programmes TV - Education - Travail - Voyages - Windows - Immobilier - Cuisine
Windows XP - Excel - Word - Outlook - Access - Internet Explorer - Office - Vista

Page generated in 0,31112 seconds with 11 queries