Wpis z mikrobloga

halo mirki z #javascript

Piszę sobie extension do vs Code i napisałem już pare funkcji do intellisense, ale teraz mam problem z mega prostym ifem, a dokładnie regexem w którym matchuje, mimo że wg. strony regex101.com nie powinno.

if(!lines[i].match('(display).*(\. *)$'))


piszę zwykłe "display abc " i mi nie wchodzi do ifa, bo wg js matchuje z regexem. Co robię nie tak?

#programowanie #regex
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ennovum: no nie , bo żeby matchowało musiało by być "display abc." i ew spacje po kropce.
Ale nawet jeśli usunę ' *' to dalej matchuje na "display abc"
Bo gwiazdka jest do spacji, nie kropki
  • Odpowiedz
@ennovum: twórz regexp-y wprost i unikniesz takich problemów.

I pamiętaj, że przeważnie stworzenie obiektu regexp-a jest cięższe niż jego użycie, więc aż szkoda tak produkować je w pętlach. Wyrzuć je sobie jako stałe gdzieś na górę pliku ;)
  • Odpowiedz