2016-05-29 18 views
1

Der Code selbst: (Sie können es auf DartPad sehen)Falsche RegEx Spiel in Dart

void main() { 
    print(new RegExp("[0-9]|'|\"|\.").hasMatch('g')); // should return false 
    print(new RegExp("[0-9]|'|\"|\.").hasMatch('0')); // return correctly true 
} 

Ausgang:

true 
true 

Mit der gleichen Version auf regex101 aber mit JS, ist der Rückgabewert richtig.

Gibt es etwas, das ich mit meiner RegExp vermisse oder sollte ich einen Fehler melden?

Antwort

6

Entweder Sie verwenden eine rohe Zeichenfolge

print(new RegExp(r'''[0-9]|'|"|\.''').hasMatch('g')); 

(''' ist ein Konflikt mit " innerhalb der Zeichenfolge zu vermeiden)

oder \

entkommen
print(new RegExp("[0-9]|'|\"|\\.").hasMatch('g')); 

DartPad example

+0

Oh ok Ich war besessen etwas vermissen. Danke vielmals ! – fandegw