Autor Wątek: [wtwRegexReplacer] Gotowe wyrażenia  (Przeczytany 8845 razy)

0 Użytkowników i 1 Gość przegląda ten wątek.

Offline igor

  • Narybek
  • *
  • ♫ ▄ █ ▄ █ ▄ █ ▄ ♫
[wtwRegexReplacer] Gotowe wyrażenia
« Odpowiedź #60 dnia: Styczeń 15, 2012, 17:29:05 pm »
Mam Twojego regx do obrazków... na drugiej pozycyji, na pierwszej mam to co kolega mrg dał, sytuacja wygląda tak, ze pokazują się dwie kopie obrazków... zmiana kolejnosci tu nic nie da, bo przy zmianie kolejności obrazki w ogle sie nie pokazują ;).

Offline adrian_007

  • Moderator
  • Starszyzna
  • *
    • ftyczki
[wtwRegexReplacer] Gotowe wyrażenia
« Odpowiedź #61 dnia: Styczeń 15, 2012, 22:50:52 pm »
jak chcesz miec 2 regexy do obrazkow to i ten drugi musisz zmodyfikowac tak aby ze soba nie kolidowaly (bo to chyba jasne, ze jak masz 2 rzeczy robiace to samo to efekt nie bedzie za ciekawy)
moje wtyczki | nie udzielam supportu poza forum...

Offline igor

  • Narybek
  • *
  • ♫ ▄ █ ▄ █ ▄ █ ▄ ♫
[wtwRegexReplacer] Gotowe wyrażenia
« Odpowiedź #62 dnia: Styczeń 16, 2012, 12:36:54 pm »
No co Ty nie powiesz ;) ?

Po prostu nigdy nie miałem styczności z regexy i nie mam zielonego pojęcia jak zmodyfikować ktorykolwiek z nich. Logiczne jest, że skoro jeden robi mi obrazek to i drugi go wyswietli, ale nie mam pojęcia czy da rade ustwić w tym pierwszym (do obrazków) definicje wykluczającą analize linków zawierających wyrażenie palringo... w snesie adresy tego typu ;).

Gwarantuje Ci, ze jakbym wiedział, to nawet bym tu posta nie napisał z prosbą o pomoc, która defakto nadal jest aktualna :).

pozdrawiam serdecznie.


edit.

no dobrze, zrobiłem tak:
Regex: http://www\.palringo\.com/en/gb/messages/\?(.*\.jpeg)
Format: <img src="http://www.palringo.com/displayImage.php?$1" style="max-width: 95%;" /><br />Adres do obrazka: palringo.com/messages/?$1

i

Regex: ((\[img\])?)\b((?<!")https?://\S*\.(jpe?g|png|gif)(?!"))\b((\[/img\])?).*
Format: <img src="$3" style="max-width: 95%;" alt="$3"/><br />Adres do obrazka: $3


No i teraz tak, czy jest jakas mozliwosc, aby w tym drugim regx wykluczyć linki z adresu zawierającego fraze palringo?


Z racji takiej, iż mam to: "adres do obrazka" to wyłapywane jest jako obrazek i wyswetlane za pomocą tego regx do obrazków.

Proszę o pomoc :).

Offline GwynBleidD

  • Narybek
  • *
[wtwRegexReplacer] Gotowe wyrażenia
« Odpowiedź #63 dnia: Kwiecień 12, 2012, 17:57:26 pm »
Najprościej rozdzielić to na osobne wyrażenia w sposób następujący:

pierwsze wyrażenie, zamienia na bezpośredni link do obrazka:
Regex:
http://www.palringo.com/\S*?messages/?([^.]+)\.(jpe?g|gif|png|bmp)
Replace:
http://www.palringo.com/displayImage.php?\1.\2

Drugie wyrażenie, zamienia dowolny link bezpośredni do obrazka na obrazek + link pod obrazkiem. To jest moja wersja, która działa bezinwazyjnie z [ img], linkami w cudzysłowach i nie tylko. Jest dosyć, hmm.. zagmatwana i trudna do zrozumienia :) ale działa dobrze. Jeśli chcesz to zamiast tego możesz użyć jakiegokolwiek regexa na obrazki:
Regex:
(?:(?:\[img](?=https?://\S*\.(?:jpe?g|png|gif)(?:\?\S*)?(\[/img])))|(?:"(?=https?://\S*\.(?:jpe?g|png|gif)("))))?(https?://\S*\.(?:jpe?g|png|gif)(?:\?\S*)?)(?:\2|\1)?
Replace:
<img src="$3" style="max-width: 90%"><br />
$3
Moja wersja różni się tym, że w przypadku wysłania błędnego bbcode albo cudzysłowów źle umieszczonych złapie BEZ tych źle zrobionych :) Więc wymusza niejako poprawność :) Inne wersje często łapały bez otwarcia lub bez zamknięcia jako poprawne. Stosuj jak pisałem którą chcesz :)

Tags: