Ktoś pomoże w #regex? Jestem totalnie zielony w temacie i 4 godziny prób nie dały zamierzonego efektu.

Jak powinno wyglądać wyrażenie wyszukujące według wzoru: a***b@gmail.com? Mail zaczyna się od litery a, później są trzy niewiadome znaki, przed małpą jest litera b, a domena to gmail.com.

Jestem na to za głupi :(

#programowanie #programista15k #pomocy
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#naukaprogramowania #csharp #regex
Hej mireczki, pomógłby ktoś mądry napisać mi wyrażenie regularne? Jestem w tym totalnie ciemny, a czasu mało :C
Potrzebuję pattern do nazw plików, które składają się z liter, cyfr, podkreślenia, tyldy i minusa od 1 do 8 znaków, a także rozszerzenia txt lub html. Ratuje plusikiem (,)
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirasy #javascript #python mam problem.
Walczę z tym już dłuższy czas niestety jestem nadal słaby into #regex
Czy ktoś może podpowiedzieć jak powinno wyglądać wyrażenie żeby z:

System ID: 0135049598 (costam2); partner ID: 0135024127 (costam1)
System Serial Number: 20015686 (costam2)
  • 14
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@zboinek:

str="System ID: 0135049598 (costam2); partner ID: 0135024127 (costam1)\nSystem Serial Number: 20015686 (costam2)\nSystem Rev: H3\nSystem Storage Configuration: Single-Path HA\nSystem ACP Connectivity: NA";
reg=/System Serial Number\: (\d+)/g ;
matches = reg.exec(str);
console.log(matches[1]);

20015686
  • Odpowiedz
@zboinek: Taki sidenote - określ, w jakim języku używasz regex'a, bo różne silniki wspierają różne konstrukcje regexowe. Między pythonem a JS są chyba spore różnice (m.in. jeśli chodzi o lookaroundy).

Co do głównego pytania: wystarczy regex w stylu System Serial Number: (\d+). Po znalezieniu match'a w swoim języku będziesz musiał się odnieść do jego grup (w samym regexie definiowaną przez nawiasy okrągłe) i wyciągnąć tą pierwszą. Niektóre implementacje przyjmują,
  • Odpowiedz
hej, męczę się z regexem do notepada++
chcę żeby zamienił mi wszystkie ° F na °F (bez spacji pomiędzy) na liniach zaczynających się od
i kończących na

Także mam takie proste coś na wyszukiwanie takich linii które zaiwerają ° F
.*?
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#php zostawię tutaj dla potrzebujących działającego #regex regexa do wyciągania linków mp3 w stringu ;)

pregmatchall('#\bhttps?://[^,\s()<>]+(?:\([\w\d]+\)|([^,[:punct:]\s]|/))#', $Word, $match);
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#regex #programowanie

Mirki chce sprawdzić regexem czy string wygląda tak: MV12345789__cos(podkreslenie)cos(podkreslenie)cos
Musi miec na początku MV, potem 9 cyfr, 3 podkreślenia a następnie dowolną ilość słów rozdzielonych pojedynczymi "(podkreslenie)". Nie mogę dodać znaków podkreślenia tutaj, bo mikroblog zmienia formatowanie zamiast to wyświetlić.

Stanąłem na tym: ^MV\d{9}_
-> na początku jest MV, potem 9 cyfr, potem 3 podkreślenia.. Jak dodać do tego kolejną część (dowolna ilość słów oddzielona
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mircy, czy możliwe jest stworzenie wyrażenia regularnego które będzie szukało określonego wyrazu?

Druga część pytania - czy jeśli już mam regex który szuka dwóch wyrazów, to czy możliwe jest stworzenie takiego wyrażenia, które je pogrupuje tak, że w jednej grupie będzie dany string i liczba która się pojawia po nim (nie bezpośrednio) i w drugiej grupie to samo tylko z drugim stringiem i drugą liczbą?

Z której strony ugryźć ten temat? Gdzie
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@tamian: Jeśli tak to:

import re
>>> a = "adam mial 23 lata, natomiast ewa miala dopiero 17 lat, kiedy się poznali"
>>> b = '(adam|ewa)[\D]+([\d]+)'
>>> print(re.findall(b, a))
[('adam', '23'), ('ewa', '17')]
  • Odpowiedz
@tamian: Twoje szczęście, że jak na bordo przystało w piątek w nocy mogę siedzieć na wykopie i pomagać w programowaniu ;)

A tak poważniej. Jako wprowadzenie bardzo spoko jest ten tutorial:
https://regexone.com
Bo automatycznie możesz sobie ćwiczyć przy nim.
Jak chcesz sobie ćwiczyć samodzielnie to polecam
  • Odpowiedz
Nigdy nie byłem mocny z regexpów, od pół godziny próbuję napisać takiego który mi spasuje wszystkie numeryczne stringi (całkowite i ułamki dziesiętne z ewentualnym minusem) krok po kroku doszedłem do rozwiązania które na moją logikę powinno działać (^([-]?[0-9]+(.[0-9]+)?)$), ale nie chcą mi przejść żadne testy, zawsze mi zwraca false. Ci ciekawe w którymś tam wątku na stackoverflow znalazłem dokładnie ten sam przykład tylko dla Javy, a ja mam kod
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Hej #php
Potrzebuję wyrażenia regularnego które dopasuje mi wyrazy które:
Zaczynają się dolarem,
mogą mieć w sobie podłogę (_)
i wszystkie litery mają wielkie. Czyli na przykład:
$ABCD
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

po co ci regex, jak to replace możesz zrobić?


@thcluboy @tell_me_more: Po co ci jakieś nieoptymalne replace czy tym bardziej regex, użyj substring:

var str = "LoginSuccessful,1111111111111,ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ";
var rest = str.substring(16);
  • Odpowiedz
#programowanie #javascript #regex
Jak zrobić regex, który dopasowuje wiele takich samych znaków i traktuje je jako jeden, jeśli są obok siebie?

Np. taki tekst:

"\n\n\ndar\nmowa\n\n rek\n\n\nlama\n\n\n\n"
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mireczki, potrzebuję takiego regexa, który wyciągnie mi dowolny ciąg znaków do końca lub pierwszej napotkanej kropki z wyłączeniem jednej frazy - "abcdef",

"index.html" -> "index"
"abc
def" -> brak dopasowań
"index2" -> "index2"

#programowanie #wyrazeniaregularne #regex
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

poczytaj trochę o lookahead/Lookbehind w regexach. one działają podobnie jak if.
ewentualnie wykorzystaj awk, perl, ostatecznie basha czyli połączenie wszystkiego jeśli nie chcesz perla :)
w sed można tworzyć zmienne i łączyć wyszukiwania. polecam do seda, awk, regex, etc
do testowania polecam stronę regex101.com - ma fajny debuger regexow + fajnie rozwija składnie danego regexa
  • Odpowiedz