2013-01-02 15 views
9

Tylko dla ciekawości.Jak ustawić REGEX, który nie pasuje do niczego?

Czy można utworzyć wyrażenie regularne, które nie będzie pasowało do żadnego ciągu, łącznie z pustym łańcuchem?

+2

Negatywne spojrzenie w przyszłość? –

+3

W [prawdziwych językach regularnych] (http://en.wikipedia.org/wiki/Regular_expression#Patterns_for_non--regular_languages), technicznie pusty zestaw jest [wyrażenie regularne] (http://en.wikipedia.org/wiki/Regular_expression # Formal_language_theory). –

+0

o co chodzi? – Christophe

Odpowiedz

13

Tak.

Oto kilka przykładów.

.^ 
$. 
(?!) 

Oczywiście istnieje nieskończona liczba takich wyrażeń.

+0

naprawdę nieskończona? –

+3

@Pterodactyl Z pewnością. Przykład: '. ^', '.. ^', '... ^', itp. –

2

Ten regex nigdy nie powinien dopasować coś (o ile nie używasz pojedynczej linii lub modyfikatory kilka linii):

$x^ 
+0

Jestem prawie pewien, że dopasuje pusty ciąg. –

+0

Czy próbowałeś? Zrobiłem – mvp

+0

próbowałem. To pasuje. –

0

Co powiesz na /^$x/. Kiedy próbuję go z rubinem, wydaje się działać.

Powiązane problemy