JavaScript: jak używać wyrażenia regularnego do usuwania pustych wierszy z ciągu? [Zamknięte]
Muszę użyć JavaScript, aby usunąć puste wiersze w polu tekstowym HTML. Puste linie mogą być w dowolnym miejscutextarea
element. Pusty wiersz może być tylko znakiem powrotu lub białymi spacjami plus powrót.
Spodziewam się rozwiązania regularnego wyrażenia tego. Oto kilka próbowałem, ale one nie działają i nie potrafią zrozumieć, dlaczego:
/^\s*\r?\n/g
/^\s*\r?\n$/g
Edytuj 1
Wydaje się, że rozwiązanie (trochę zmodyfikowałem) sugerowane przez prace aaronmana i m.buettnera:
string.replace(/^\s*\n/gm, "")
Czy ktoś może powiedzieć, dlaczego moje pierwsze wyrażenie regularne nie działa?
Edytuj 2
Po przeczytaniu wszystkich przydatnych odpowiedzi wymyśliłem:
/^[\s\t]*(\r\n|\n|\r)/gm
Czy to będzie ten, który obejmuje wszystkie sytuacje?
Edytuj 3
Jest to najbardziej zwięzły, obejmujący wszystkie przestrzenie (białe spacje, tabulatory) i platformy (Linux, Windows, Mac).
/^\s*[\r\n]/gm
Wielkie dzięki dla m.buettner!