ProstaPaczka2

ProstaPaczka2 => Subiekt GT => Wątek zaczęty przez: Piotr w Styczeń 12, 2020, 12:24:52 pm

Tytuł: Wyrażenie pobierające identyfikatory do wstawienia numeru listu do Allegro
Wiadomość wysłana przez: Piotr w Styczeń 12, 2020, 12:24:52 pm
W tym wątku będziemy starali się umieszczać przykłady wyrażeń regularnych, które pozwolą na wybieranie danych referencyjnych z serwisu Allegro z dokumentu Subiekta GT, potrzebnych do wstawienia numeru listu do serwisu Allegro.pl

Funkcje te są dostępne w wersji PRERMIUM z poziomu:
SUBIEKT GT -> zębatka -> PO EKSPORCIE -> W ALLEGRO
Tytuł: Odp: Wyrażenie pobierające identyfikatory do wstawienia numeru listu do Allegro
Wiadomość wysłana przez: Piotr w Styczeń 12, 2020, 12:26:22 pm
Przykład zapisania danych referencyjnych Allegro w polu własnym dokumentu
Allegro/252754e2-1da7-11ea-a296-13f8931fc130/lcsoft

Id zamówienia z pola własnego: (?<=Allegro\/).*?(?=\/)
Login sprzedającego z pola własnego: (?<=Allegro\/.*.\/).*
Tytuł: Odp: Wyrażenie pobierające identyfikatory do wstawienia numeru listu do Allegro
Wiadomość wysłana przez: Piotr w Luty 10, 2020, 10:03:11 am
Przykład pobierania identyfikatorów z uwag dokumentu:
**111111111*2192bxxx-4xx1-1xxa-bxx0-xxx47debe724*allegro(xxx)*nick*platnosc*...

Id transakcji:
(?<=[*][*].\d+.[*]).{36,36}(?=[*]allegro)Wybierze wartość: 2192bxxx-4xx1-1xxa-bxx0-xxx47debe724

Id sprzedającego:
(?<=[*][*]).\d+.(?=[*])wybierze wartość: 111111111
Tytuł: Odp: Wyrażenie pobierające identyfikatory do wstawienia numeru listu do Allegro
Wiadomość wysłana przez: Tomek w Sierpień 31, 2021, 11:47:54 am
Jeśli dane prezentowane są w następujący sposób:

"*123456789*1234e123-123c-12eb-b12f-9b7b1234567b*allegro(12345)*Client:12345678*PayU*Allegro Paczkomaty InPost*Bez Faktury*38.98*Paczkomat WAW07A*12b12345-123c-12eb-b2cf-ab8f1234e12f*"

możemy użyć wyrażenia pobierającego dane spomiędzy znaków *

(?<=^(?:[^*]+\*){1}).*?(?=[*])
Powyższe wyrażenie pozwala wybrać ciąg znaków spomiędzy pierwszego wystąpienia znaku *, a najbliższego za nim. Po jego zastosowaniu pobrany zostanie następujący ciąg znaków: 123456789

Jeśli chcemy wybrać ciąg znaków zaczynający się na trzeciej gwiazdce i kończący na czwartej, należy podmienić jedynkę na trójkę:

(?<=^(?:[^*]+\*){3}).*?(?=[*])
Analogicznie możemy wybrać każdy pożądany ciąg znaków.