![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 83 Pomógł: 0 Dołączył: 5.01.2006 Skąd: Kraków Ostrzeżenie: (10%) ![]() ![]() |
Witam.
Potrzebuję napisać wyrażenie regularne, które ma na celu wyszukanie wszystkich linków które linkują do innej strony niż np. http://www.example.com Mam taki kod
Niestety to wyrażenie znajduje zarówno linki które linkują do http://www.example.com oraz takie które linkują gdzie indziej. Czy może ktoś mi wskazać miejsce gdzie popełniłem błąd? Z góry dzięki |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 875 Pomógł: 122 Dołączył: 2.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
[^example\.com] Ten zapis nie będzie ci działał tak jak chcesz bo ten ciąg nie jest traktowany jak string tylko jak zbiór znaków... poza tym w nawiasach kwadratowych nie eskejpuje się znaków specjalnych... Ja ci proponuję podejść od innej strony... zamiast sprawdzać czy dany link nie linkuje do example.com zrób takie zapytanie które będzię sprawdzać czy linkuje... potem możesz odpowiednio zamanipulować rezultatem funkcji preg_match zamiast kombinować wyrażenie... |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 83 Pomógł: 0 Dołączył: 5.01.2006 Skąd: Kraków Ostrzeżenie: (10%) ![]() ![]() |
Ja ci proponuję podejść od innej strony... zamiast sprawdzać czy dany link nie linkuje do example.com zrób takie zapytanie które będzię sprawdzać czy linkuje... potem możesz odpowiednio zamanipulować rezultatem funkcji preg_match zamiast kombinować wyrażenie... Niestety nie o to chodzi. Chodzi o to aby sprawdzić czy w tekście istnieje jakikolwiek link inny niż example.com. Czyli sprawdzenie czy istnieją linki które linkują do example nie daje nic bo gdy na stronie bedzie 5 linków z czego 2 linkują do example.com a reszta np do nextexample.com to preg_match i tak zwróci true. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 875 Pomógł: 122 Dołączył: 2.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Dlatego musisz stworzyć takie zapytanie które wyłapie tylko i wyłącznie linki do example.com a inne, w stylu nextexample.com, pominie...
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 83 Pomógł: 0 Dołączył: 5.01.2006 Skąd: Kraków Ostrzeżenie: (10%) ![]() ![]() |
Dlatego musisz stworzyć takie zapytanie które wyłapie tylko i wyłącznie linki do example.com a inne, w stylu nextexample.com, pominie... Jest to pewne podejście ale czy możesz doklaniej wytłumaczyć co dzięki niemu osiągnę? Jeżeli policze ile mam linków do example to musze potem jeszcze policzyc ile mam wszystkich linków w stronie i jeżeli obie liczby się zgodzą to jest ok, a jeżeli nie to znaczy że są jakieś linki zewnętrzne. Ale to są już jest podwójne mielenie tekstu dlatego wolałbym zrobić to w jednym zapytaniu czyli znaleźć linki różne od np example.com Może ma ktoś jeszcze jakiś pomysł? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 11:01 |