Pytania oznaczone «regex»

84
Wyrażenie regularne do analizowania numeru wersji

Mam numer wersji w następującym formularzu: version.release.modification gdzie wersja, wydanie i modyfikacja to zestaw cyfr lub znak wieloznaczny „*”. Ponadto może brakować któregokolwiek z tych numerów (i wszystkich poprzedzających). Więc poniższe są prawidłowe i analizowane jako: 1.23.456...

84
Jak usunąć liczby z ciągu?

Chcę usunąć liczby z ciągu: questionText = "1 ding ?" Chcę zamienić 1liczbę i znak zapytania ?. Może to być dowolna liczba. Wypróbowałem następujący niedziałający kod. questionText.replace(/[0-9]/g, '');

84
Podziel zdania za pomocą „” i usuń otaczające je spacje

Mam ten kod: var r = /(?:^\s*([^\s]*)\s*)(?:,\s*([^\s]*)\s*){0,}$/ var s = " a , b , c " var m = s.match(r) m => [" a , b , c ", "a", "c"] Wygląda na to, że dopasowano cały ciąg, ale gdzie się "b"podział? Wolałbym raczej oczekiwać: [" a , b , c ", "a", "b", "c"] dzięki czemu mogę zrobić...

84
Potwierdź dopasowania wyrażeń regularnych w JUnit

Ruby Test::Unitma fajną assert_matchesmetodę, której można użyć w testach jednostkowych, aby potwierdzić, że wyrażenie regularne pasuje do łańcucha. Czy jest coś takiego w JUnit? Obecnie robię to: assertEquals(true, actual.matches(expectedRegex));

84
Jak rozpoznać zły regex?

Niedawno dowiedziałem się o atakach Denial of Service za pomocą wyrażeń regularnych i zdecydowałem się wykorzenić tak zwane „złe” wzorce regex, gdziekolwiek mogłem je znaleźć w mojej bazie kodu - lub przynajmniej te, które są używane podczas wprowadzania danych przez użytkownika. Przykłady...

84
Wyrażenie regularne zawierające jedno lub drugie słowo

Muszę utworzyć wyrażenie pasujące do liczby całkowitej, po której następuje „sekundy” lub „minuty” Spróbowałem tego wyrażenia: ([0-9]+)\s+(\bseconds\b)|(\bminutes\b) Działa dobrze przez kilka sekund, ale nie minut. Np. „5 sekund” daje 5 sekund; podczas gdy „5 minut” daje ;; minuty...

83
Jak używać wyrażeń regularnych w skryptach bash?

Chcę sprawdzić, czy zmienna ma prawidłowy rok, używając wyrażenia regularnego. Czytając instrukcję basha , rozumiem, że mogę użyć operatora = ~ Patrząc na poniższy przykład, spodziewałbym się komunikatu „nie OK”, ale widzę „OK”. Co ja robię źle? i="test" if [ $i=~"200[78]" ] then echo...

83
Python i wyrażenie regularne z Unicode

Muszę usunąć niektóre symbole Unicode z ciągu „بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ” Wiem, że na pewno tu istnieją. Próbowałem: re.sub('([\u064B-\u0652\u06D4\u0670\u0674\u06D5-\u06ED]+)', '', 'بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ') ale to nie działa. Ciąg pozostaje taki sam. Co ja robię...

83
Składnia wyrażenia regularnego dla „nic nie pasuje”?

Mam silnik szablonów Pythona, który w dużym stopniu korzysta z wyrażenia regularnego. Używa konkatenacji, takich jak: re.compile( regexp1 + "|" + regexp2 + "*|" + regexp3 + "+" ) Potrafię modyfikować poszczególne podciągi (regexp1, regexp2 itp.). Czy jest jakieś małe i lekkie wyrażenie,...

83
Konwertowanie MatchCollection na tablicę ciągów

Czy istnieje lepszy sposób niż ten, aby przekonwertować MatchCollection na tablicę ciągów? MatchCollection mc = Regex.Matches(strText, @"\b[A-Za-z-']+\b"); string[] strArray = new string[mc.Count]; for (int i = 0; i < mc.Count;i++ ) { strArray[i] = mc[i].Groups[0].Value; } PS:...

83
Wybierz kolumny na podstawie dopasowania ciągów - dplyr :: select

Mam ramkę danych („dane”) z dużą ilością kolumn. Niektóre kolumny zawierają określony ciąg („ciąg_wyszukiwania”). Jak mogę użyć dplyr::select()podzbioru zawierającego tylko kolumny zawierające ciąg? Próbowałem: # columns as boolean vector select(data, grepl("search_string",colnames(data))) #...

82
Jak dopasować cały ciąg do wyrażenia regularnego?

Potrzebuję wyrażenia regularnego, które znajdzie dopasowania tylko wtedy, gdy cały ciąg pasuje do mojego zapytania. Na przykład, jeśli wyszukuję filmy z tytułem „Czerwony październik”, chcę dopasować tylko do tego dokładnego tytułu (bez rozróżniania wielkości liter), ale nie chcę dopasować...