Musisz umieścić znaki, które chcesz podzielić, w klasie znaków , co powie silnikowi wyrażeń regularnych, że „każdy z tych znaków jest zgodny”. Dla twoich celów wyglądałoby to następująco:
date.split(/[.,\/ -]/)
Chociaż myślniki mają specjalne znaczenie w klasach znaków jako specyfikator zakresu (tj. [a-z]
Oznacza to samo co [abcdefghijklmnopqrstuvwxyz]
), jeśli umieścisz go jako ostatnią rzecz w klasie, przyjmuje się, że oznacza to dosłowny myślnik i nie trzeba go zmieniać.
Aby wyjaśnić, dlaczego wzorzec nie zadziałał, /-./
mówi aparatowi wyrażeń regularnych, aby dopasował literowy myślnik, po którym następuje dowolny znak ( kropki to symbole wieloznaczne w wyrażeniach regularnych). W przypadku „02-25-2010” będzie się dzielić za każdym razem, gdy napotkany zostanie „-2”, ponieważ kreska pasuje, a kropka pasuje do „2”.
Daniel Vandersluis
źródło
lub po prostu (cokolwiek oprócz liczb):
źródło
możesz po prostu użyć
lub
źródło
Następnie podziel go na wszystko oprócz liczb:
źródło
Powiedz, że Twój ciąg to:
Chcesz podzielić ciąg za pomocą następujących separatorów:
Możesz podzielić ciąg w następujący sposób:
Na koniec może być konieczne przycięcie elementów w tablicy:
źródło
lub po prostu użyj dla ciągów dat 2015-05-20 lub 2015.05.20
źródło
spróbuj tego zamiast tego
date.split (/ \ W + /)
źródło