IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

Problème de <font...> dans un Replace


Sujet :

ASP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de roots_man
    Inscrit en
    Août 2004
    Messages
    328
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 328
    Par défaut Problème de <font...> dans un Replace
    Question sur le replace.. alors voila j'aimerais faire un replace en supprimant toutes les balise <font...></font>

    Je pensais fait comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var1 = replace(request.form("contenu"), "<font...>", " ")
    var2 = replace(var1, "</font>", " ")
    Le problème est dans le premier replace... comment dire de tout selectionner le <font jusqu'a sa balise de fermeture >. ??

    Merci d'avance

  2. #2
    Membre éclairé Avatar de pmboutteau
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    601
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Février 2005
    Messages : 601
    Par défaut
    le * çà marche pas? Je pense pas mais bon


  3. #3
    Membre éclairé Avatar de pmboutteau
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    601
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Février 2005
    Messages : 601
    Par défaut
    sinon il existe pas des fonctions comme en C où tu recherche toutes les chaines de caractères commençant par <font et terminant par >?

  4. #4
    Membre éclairé Avatar de roots_man
    Inscrit en
    Août 2004
    Messages
    328
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 328
    Par défaut
    le font* ne fonctionne pas... pis pour les fonctions.. c'est ca ke j'aimerais trouvé mais je ne sais pas lakelle c'est !!!

  5. #5
    Membre éclairé Avatar de pmboutteau
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    601
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Février 2005
    Messages : 601

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    166
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 166
    Par défaut
    Tu vas être obligé de faire une fonction de manipulation de chaine de caractères.Dans l'idée ça pourrait donner ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    Function EliminerTag(strNomTag,strContenu)
        'chaine dans la quelle on va recopier au fur et à mesure le resultat voulu
        dim strResulat
    '#####debut  boucle
    'ici on traite l'élimination du tag <tag.....>    et de </tag>
        'renvoie la position du tag
        idx = [b]InStr[/b](strContenu, "<" & strNomTag) 
        'extraction de la chaine
        strResulat = strResulat & [b]Left[/b](strContenu,idx)
        'puis on cherche le prochain">"
        'voire aussi ce qu'on peut faire avec la fonction Right,InstrRev
     etc.........
    '#####fin boucle
     
     
    End function
    Et oui c'est laborieux , mais faut parfois mettre les mains dans le cambouis!

  7. #7
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 6
    Par défaut
    Je pense que la vraie solution serait en fait d'utiliser des expressions régulières.
    En ASP VBScript tu as l'objet RegExp qui te permet de faire un peu tout ce que tu veux en ce qui concerne les manipulations de chaînes de caractères
    En gros ca devrait se passer comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Dim oRegExp
    Set oRegExp = New RegExp
    oRegExp.Pattern = "expression régulière pour trouver tes tags font"
    oRegExp.IgnoreCase = true
    chaine_nettoyee = oRegExp.Replace("string à vérifier", "string de remplacement")
    Set oRegExp = Nothing
    Je suis pas un pro des expressions régulières donc faudrait faire un peu de recherche là-dessus. Mais en gros si tu veux pas mettre les mains dans le camboui et avoir un truc propre je pense que c'est la seule solution
    +
    Seb

  8. #8
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 6
    Par défaut
    Voilà j'ai trouvé un chtit exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <%
    Option Explicit
     
    Dim s1
    Dim s2
    Dim oRegExp
     
    s1 = "blabla<font color='red'>blabla</font>blabla"
    Set oRegExp = new RegExp
    oRegExp.IgnoreCase = true
    oRegExp.Global = true
    oRegExp.Pattern = "<[^>]*>"
    s2 = oRegExp.Replace(s1, "")
     
    Response.Write s1 & "<br>"
    Response.Write s2
    %>
    exécute et tu verras que la partie en rouge devient noire
    Par contre l'expression que je t'ai mise enlève TOUS les tags HTML de ton code, pas seulement les "font", donc faudra peut être vérifier pour mettre ce qu'il faut si ce n'est pas ce que tu veux

  9. #9
    Membre éclairé Avatar de roots_man
    Inscrit en
    Août 2004
    Messages
    328
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 328
    Par défaut
    Voili voila.. j'ai fait un peu de recherche pis j'ai trouvé cela et ca marche nickel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
       Set regEx = New RegExp
       regEx.Global = True
       regEx.Pattern = "<[font[^>]+>"
       notag = regEx.replace(request.form("test"),"")
       response.write(notag)
    A la ligne regEx.Pattern = "<[font[^>]+>", on peut décider des balise qu'on veut enlever

    Merci beaucoup pour votre aide

  10. #10
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 6
    Par défaut
    Rajoute quand même la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    regEx.IgnoreCase = True
    sinon ca va pas marcher quand tu auras une balise "<FONT..." mais seulement avec les balises "<font...>" à priori
    A+
    Seb

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec une Font embarqué dans un client silverlight
    Par Tardiff Jean-François dans le forum Silverlight
    Réponses: 1
    Dernier message: 16/09/2011, 11h31
  2. Réponses: 0
    Dernier message: 04/04/2011, 10h31
  3. problème our passer des string dans tableau d'int
    Par Battosaiii dans le forum C++
    Réponses: 9
    Dernier message: 15/07/2004, 17h42
  4. Problème de rangement de structure dans un fichier ...
    Par Freeze dans le forum C++Builder
    Réponses: 8
    Dernier message: 16/12/2003, 16h46
  5. Réponses: 1
    Dernier message: 06/03/2003, 11h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo