176 votes

Comment extraire une chaîne de caractères à l'aide de JavaScript Regex ?

J'essaie d'extraire une sous-chaîne d'un fichier avec JavaScript Regex. Voici une sous-chaîne du fichier :

DATE:20091201T220000
SUMMARY:Dad's birthday

le champ que je veux extraire est "Résumé". Voici l'approche :

extractSummary : function(iCalContent) {
  /*
  input : iCal file content
  return : Event summary
  */
  var arr = iCalContent.match(/^SUMMARY\:(.)*$/g);
  return(arr);
}

3voto

Mbistami Points 377

Vous devriez utiliser ce :

var arr = iCalContent.match(/^SUMMARY\:(.)*$/g);
return(arr[0]);

-1voto

user187291 Points 28951

Voici comment analyser les fichiers iCal avec javascript

    function calParse(str) {

        function parse() {
            var obj = {};
            while(str.length) {
                var p = str.shift().split(":");
                var k = p.shift(), p = p.join();
                switch(k) {
                    case "BEGIN":
                        obj[p] = parse();
                        break;
                    case "END":
                        return obj;
                    default:
                        obj[k] = p;
                }
            }
            return obj;
        }
        str = str.replace(/\n /g, " ").split("\n");
        return parse().VCALENDAR;
    }

    example = 
    'BEGIN:VCALENDAR\n'+
    'VERSION:2.0\n'+
    'PRODID:-//hacksw/handcal//NONSGML v1.0//EN\n'+
    'BEGIN:VEVENT\n'+
    'DTSTART:19970714T170000Z\n'+
    'DTEND:19970715T035959Z\n'+
    'SUMMARY:Bastille Day Party\n'+
    'END:VEVENT\n'+
    'END:VCALENDAR\n'

    cal = calParse(example);
    alert(cal.VEVENT.SUMMARY);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X