2010-05-08 4 views
0

je détecter un comportement étrange dans les expressions rationnelles créées avec l'objet RegExp:comportement incompatible avec RegExp objet dans RegExp.match

Avec ce code:

var exp1 = /./; 
var exp2 = new RegExp('.'); 
​ 
var test1 = exp1.test('large\n\ntext..etc.'); 
var test2 = exp2.test('large\n\ntext..etc.'); 
​ 
var match1 = 'large\n\ntext..etc.'.match(exp1); 
var match2 = 'large\n\ntext..etc.'.match(exp2); 

... le résultat est:

test1 = true 
test2 = true 
​ 
match1 = 'l' (first match) 
match2 = null 

avec l'expression rationnelle maked avec l'objet regExp d'une chaîne, il ne trouve rien ...

Pourquoi cela se passe-t-il?

Merci!

EDIT: Je l'ai essayé dans Mozilla Firefox 3.5, je ne l'ai pas essayé dans d'autres navigateurs ...

Répondre

1

Works pour moi dans Firefox 3.5.9. test1 et test2 sont à la fois true et match1 et match2 sont tous les deux ['l']

+0

J'ai modifié le message principal. Je l'ai essayé dans Mozilla Firefox 3.5, je n'ai pas essayé dans d'autres navigateurs ... Merci pour votre réponse. – NeDark

+0

Fonctionne pour moi aussi: FF 3.6.3 –