2011-08-04 1 views
1

J'ai quelques chaînes comme celles-ci:Comment puis-je reconnaître ces types de chaînes "par défaut plus ou moins"?

00. 00:00:00 - 
00. - 00:00:00 - 
00. 00:00:00 
00 - 00:00:00 
00) 00:00:00 

, comment pouvez-vous voir, ils sont similaires (pas égaux). Je dois "extrapoler" le bloc interne (formé par 00:00:00) et enlever le reste des caractères.

Chaque 0 dans l'exemple doit être un entier compris entre 0 et 9 ou le caractère ?.

Comment puis-je le faire sur jQuery? Regex?

Comme point de départ pour vérifier que j'ai fait un Fiddle

+0

jQuery ne vient pas vraiment dans ce, c'est juste la version javascript de regex –

Répondre

5
var result = strings.match(/[\d?]{2}:[\d?]{2}:[\d?]{2}/g); 

result sera un tableau avec tous les matchs de NN:NN:NN, ??:??:??, ou toute version combinée de N et ?.

Voici une démo pour a string with a single match & a string with multiple matches.

+0

Oui cela fonctionne. Comme les dernières choses (j'ai oublié de préciser dans la question) je dois vérifier aussi les chaînes qui contiennent '?' :) Pouvez-vous m'aider à nouveau? :) – markzzz

+0

@markzzz: Mise à jour du code. Cela devrait fonctionner. – Shef

Questions connexes