Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 13.02.2018 Ostrzeżenie: (0%)
|
Witam, problem wygląda następująco:
W poniższym kawałku HTML chciałbym złapać wszystkie puste atrybuty attr (oznaczone na czerwono): <img src="/test-image_1.jpg" attr="test-image_1" qwe="asd" attr> <img src="/test-image_1.jpg" attr="test-image_1" qwe="asd" attr=> <img src="/test-image_1.jpg" attr= "test-image_1" qwe="asd" attr=""> <img src="/test-image_1.jpg" attr= "test-image_1" qwe="asd" attr=" "> <img attr="a attr b" src="/test-imagalte_1.jpg" attr qwe="asd" /> <img src="/test- alt image_1.jpg" attr="test-image_1" attr= "" qwe="asd" > <img src="/test-image_1.jpg" attr = " " asd=" q" attr="test-image_1" attr qwe="asd" > Poprzez "puste" rozumiem także atrybuty attr zawierające między cudzysłowami białe znaki. Dodatkowo ciągi attr występujące pomiędzy cudzysłowami nie powinny zostać złapane. Wyrażenie które mam na ten moment: /attr(?=(?:[^"]*"[^"]*")*[^"]*\Z)/gi https://regex101.com/r/MvpdM9/1 Ten post edytował Strelok 8.03.2018, 16:32:25 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%)
|
Nie rozumiem o co chodzi z tym sprowadzaniem do stereotypów. Zadanie jest jasne, tylko jak to często bywa, osoba pytająca nie uwzględnia wszystkich potencjalnych problemów w pytaniu. Taki urok zadawania pytań, że osoba odpowiadająca musi sama przemielić pytanie i spojrzeć na nie z lotu ptaka.
Jeżeli faktycznie jest sto procent pewności, że pewna sytuacja nie wystąpi, to można iść na pewne kompromisy, choć jest to już jazda na krawędzi, bo warunki wejściowe mogą się kiedyś zmienić. Nie chce mi się sprzeczać, tym bardziej że nie ma o co. Napisałem wyżej, że najlepiej byłoby poszukać parsera co nie zignoruje powtórzonych atrybutów. Takie zdanie podtrzymuję. Bez tego pozostają rozwiązania z błędami, które jednak mogą wystarczyć autorowi pytania, choć tego nie wiemy na pewno. Nie sprzeczajmy się już. Dobranoc. |
|
|
|
Strelok Usuwanie pustych atrybutów html, regex 8.03.2018, 16:30:07
SmokAnalog Powiem Ci, że będzie ciężko. Wyrażenie regularne m... 9.03.2018, 00:28:48
Pyton_000 Użyj sobie tego: https://github.com/paquettg/php-h... 9.03.2018, 08:42:47
SmokAnalog Pyton, ale jest jeden problem. Te biblioteki w zal... 9.03.2018, 12:55:03
Pyton_000 Nie doczytałem że tam może być więcej attr w tagu.... 9.03.2018, 13:29:01
trzczy Co w tym trudnego?
https://regex101.com/r/qZ7Slx/... 9.03.2018, 14:01:25 
Strelok Cytat(trzczy @ 9.03.2018, 14:01:25 ) ... 9.03.2018, 14:27:36 
SmokAnalog Cytat(trzczy @ 9.03.2018, 14:01:25 ) ... 9.03.2018, 14:53:00
Pyton_000 Nic trudnego tylko nikomu się nie chciało takiego ... 9.03.2018, 14:14:43
Pyton_000 Pytanie skąd taki śmietnik przychodzi... 9.03.2018, 15:04:43
trzczy @SmokAnalog taaa...
@Strelok, najlepiej zapodaj st... 9.03.2018, 15:40:20 
Strelok Cytat(trzczy @ 9.03.2018, 15:40:20 ) ... 9.03.2018, 15:56:37
trzczy Wersja z <attr akceptowalnym:
https://regex101... 9.03.2018, 16:12:03
SmokAnalog Nadal wyłapujesz luźny ciąg znaków attr niebędący ... 9.03.2018, 21:55:31
trzczy Postawiłem sobie za zadanie spełniać testy. Bezuży... 9.03.2018, 22:10:36
SmokAnalog No to dodaj prawidłowo te testy Co to w ogóle jes... 9.03.2018, 22:20:30
trzczy Jeśli masz jakieś wymagania, to zapraszam do giełd... 9.03.2018, 22:25:02
SmokAnalog Nie no, super. Dodawaj złą odpowiedź bez uprzedzen... 9.03.2018, 22:26:37
trzczy Znajdź sobie więc fajniejszego kolegę. Ja oferuję ... 9.03.2018, 22:29:09
SmokAnalog Mam nadzieję, że jeśli pracujesz z klientami to wk... 9.03.2018, 22:34:10
trzczy Jasno stawiam sprawę: dajesz testy, znajdę regex. ... 9.03.2018, 22:42:40
SmokAnalog Nie chcę brzmieć jak tatuś, ale przemyśl swoje zac... 10.03.2018, 00:41:46
trzczy Kojarzysz mi się głównie z blamażem file_get_conte... 10.03.2018, 01:05:30
SmokAnalog Hę? 10.03.2018, 01:11:27
trzczy Zniknąłeś na parę dni, jak dostałeś srogą naukę. N... 10.03.2018, 01:22:17 
b4rt3kk Cytat(trzczy @ 10.03.2018, 01:22:17 )... 10.03.2018, 01:35:20
SmokAnalog Zniknąłem jak dostałem jakąś naukę? Nie wiem co bi... 10.03.2018, 01:29:22
trzczy W mych oczach potwierdziłeś, że masz zdolności głó... 10.03.2018, 01:33:32
SmokAnalog Raczej mu zaszkodziłeś niż pomogłeś, bo podałeś bł... 10.03.2018, 01:38:20
trzczy Moje rozwiązanie nawiązuje wprost do wymagań pytaj... 10.03.2018, 01:48:56
SmokAnalog No i właśnie nie miały być wyłapane, a Twój wzorze... 10.03.2018, 01:56:09
trzczy Różne są zadania w informatyce i sprowadzanie ich ... 10.03.2018, 02:16:39 
trzczy Cytat(SmokAnalog @ 10.03.2018, 02:28... 10.03.2018, 05:06:56 
SmokAnalog Trzczy - Twoja argumentacja jest cholernie amators... 10.03.2018, 12:05:36
Pyton_000 Możecie sobie prywatne żale wylewać gdzieś indziej... 10.03.2018, 09:42:27
Strelok Dziękuję za wszelkie sugestie. Zdaję sobie sprawę ... 10.03.2018, 12:47:26 
trzczy Cytat(Strelok @ 10.03.2018, 12:47:26 ... 10.03.2018, 13:59:22
viking Wrzuciłem do https://packagist.org/packages/electr... 10.03.2018, 13:11:58
SmokAnalog Przy okazji wywala też niepuste, a nie o to chodzi... 10.03.2018, 13:42:08
viking Poprzez "puste" rozumiem także atrybuty ... 10.03.2018, 13:57:44 
SmokAnalog Cytat(viking @ 10.03.2018, 13:57:44 )... 10.03.2018, 14:16:48
viking Pierwsze zdanie to właśnie był cytat z pierwszego.... 10.03.2018, 14:22:50
SmokAnalog Cytat(Strelok @ 8.03.2018, 16:30:07 )... 10.03.2018, 14:25:43
viking No a co za problem napisać ifa do tego? 10.03.2018, 14:31:54
SmokAnalog Ty tak serio? 10.03.2018, 14:36:33
viking Ale niby co? Filtrowanie to zawsze domena użytkown... 10.03.2018, 15:09:23
SmokAnalog Nikt nie mówił, że biblioteki nie usuwają zdupliko... 10.03.2018, 15:23:56 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 22:17 |