2009-12-28 9 views
0

Je le code suivantSélectionnez une sous-chaîne basée sur la chaîne d'options

 

// this text box can contain a URL such as: 
// http://vimeo.com/ 
// http://www.youtube.com/ 
// and so on. 
var text = $('#myTextBox').val(); 
var providers = "youtube|flickr|viddler|qik|revision3|hulu|vimeo"; 

if(text.match(providers).length > -1) { 
    var selectedProvider = ???; 
} 
 

la méthode match regarde s'il y a une sous-chaîne qui correspondent à la liste des fournisseurs: youtube, flickr, vimeo etc.

Ma question est de savoir quel fournisseur a été apparié?

Répondre

3

Vous pouvez saisir le résultat match et obtenir le premier élément matched:

var text = $('#myTextBox').val(); 
var match = text.match("youtube|flickr|viddler|qik|revision3|hulu|vimeo"); 

if (match) { 
    var selectedProvider = match[0]; 
} 

String.prototype.match attend un objet RegExp comme argument, mais si vous passez un String, il sera remplacé par le résultat de l'expression new RegExp(string)

+0

Nous vous remercions de votre réponse rapide. une réponse si simple :) – Onema