Page 1 sur 1

retirer balise html en Lotus Script

MessagePublié: 14 Sep 2010 à 09:58
par Michael DELIQUE
bonjour

je cherche un code Lotus Script pour retirer le balisage html d'une chaine de caractere

MessagePublié: 14 Sep 2010 à 10:14
par Aquanotes
Je n'ai qu'en js avec prototype (via des expressions régulières si tu regardes la source). Ça peut peut-être t'aider.

http://api.prototypejs.org/language/str ... striptags/

MessagePublié: 14 Sep 2010 à 11:39
par Michael DELIQUE
re,

je l'ai en JS mais sans framework j'aimerais éviter d'avoir a implémenter les expression réguliere en LS

[Edit] j'ai trouvé ça en Java => http://www.commentcamarche.net/forum/af ... lises-html

MessagePublié: 14 Sep 2010 à 11:45
par Michael DELIQUE

MessagePublié: 14 Sep 2010 à 13:02
par Michael DELIQUE
je me suis inspirer de la formule et ça donne ça => http://forum.dominoarea.org/viewtopic,p ... tml#131601

MessagePublié: 14 Sep 2010 à 13:15
par nemrod93
C'est vrai qu'une bonne recherche sur dominoarea est souvent très instructive

MessagePublié: 14 Sep 2010 à 13:43
par nemrod93
Merci pour ton adaptation, j'ai testé car j'avais le même besoin
cool

MessagePublié: 14 Sep 2010 à 13:54
par Michael DELIQUE
de rien,

si tu vois des améliorations / bug n'hésite pas

MessagePublié: 14 Sep 2010 à 14:23
par nemrod93
Ok je te dis s'il y a un truc pour améliorer. Pour l'instant, j'ai testé l'importation d'une page html pour ne récupérer que le texte et les datas et je n'ai pas eu de défaut

MessagePublié: 14 Sep 2010 à 14:55
par Aquanotes
Michael DELIQUE a écrit:re,

je l'ai en JS mais sans framework j'aimerais éviter d'avoir a implémenter les expression réguliere en LS


Une implémentation avec LS2J :

Biblio JAVA
Code : Tout sélectionner
import java.util.regex.*;

public class LSRegEx {

   public static String stripTags (String s)  {          
      Pattern p = Pattern.compile("<\\w+(\\s+("[^"]*"|'[^']*'|[^>])+)?>|</w>");
           Matcher m = p.matcher(s);
      return m.replaceAll("");
   }
   
   public static String stripScripts (String s)  {
      
      Pattern p = Pattern.compile("<script>]*>([\\S\\s]*?)</script>");
      Matcher m = p.matcher(s);
          return m.replaceAll("");
   }
   
}


Agent LS
Code : Tout sélectionner
   Dim jSession As JavaSession
   Dim lSRegEx As JavaClass
   
   Set jSession = New JavaSession()
   Set lSRegEx = jSession.GetClass("LSRegEx")
   
   Const codeHtml = |a <a>link</a><script>alert("hello world!");</script>|
   
   Print lSRegEx.stripTags(codeHtml )
   Print lSRegEx.stripScripts(codeHtml )    
   Print lSRegEx.stripTags(lSRegEx.stripScripts(codeHtml ) )


MessagePublié: 14 Sep 2010 à 15:03
par Michael DELIQUE
Merci AquaNotes, je l'ai rajouté au tips