![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 2 Dołączył: 2.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam Serdecznie
Mam taki mały problem. Chcę wyciągnąć dany kod ze strony. Na stronie znajduje się kilka lekko różniących się ciągów znaków, początki i końce są takie same. Chcę dostać je wszystkie ułożone wg. ułożenia na stronie z której pobieram. I mam:
Ten kod działa, problem leży w samym wyciąganiu kodu i układaniu go koło siebie. To do teraz co zrobiłem wyciąga ten sam kod i mnoży go razy 2 układając go koło siebie. Chcę tak zrobić by po nim wyciągał następny kod tak samo zaczynający się od ABC a kończący na XYZ. Takich kodów na stronie jest kilka (zawsze inna liczba). Przedarłem się przez całe wyrażenia regularne by odszukać odpowiedz... nie znalazłem. Jak ktoś może mnie naprowadzić będę wdzięczny. pozdrawiam. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 82 Pomógł: 22 Dołączył: 20.07.2010 Ostrzeżenie: (0%) ![]() ![]() |
nie wiem czy dobrze Cie rozumiem. Chcesz po prostu wypisac te kody po kolei?
"wyciąga ten sam kod i mnoży go razy 2 układając go koło siebie" - $tekst[0][0] i $tekst[1][0] to nie to samo |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 2 Dołączył: 2.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
tak właśnie chcę zrobić, ale nie mam tego ciągu jeszcze zapisanego w bazie, zapisuję dopiero jak wybiorę ABCtaXYZ, ABCtbXYZ, ABCtcXYZ. Odczyt z bazy jest dla mnie nie istotny, na razie chcę zapisać do bazy właśnie tak ułożony kod - ABCtaXYZ, ABCtbXYZ, ABCtcXYZ a ciągle mi zapisuje ABCtaXYZ, ABCtaXYZ. Problemu bym nie miał gdyby to były ciągi nie zaczynające się i nie kończące tak samo i gdybym znał liczbę wszystkich występujących. Wtedy zdefiniowałbym każdy z osobna.
W środku wszystkie ciągi mają jedną wspólną część i też mogę je zaznaczyć tak jak miałem wcześniej: ale to nadal zaznacza i wybiera pierwszy kod, który zapisuje do bazy, a opuszcza resztę. Z preg_match_all zrobiłem tak, że zapisuje nie wszystkie a ten sam kilka razy. Potrzebuję zapisać wszystkie. foreach to raczej do odczytu. dzięki za odpowiedz, jakbyś wiedział coś więcej daj znać --- zapisać już wybrany i ułożony ABCtaXYZ, ABCtbXYZ, ABCtcXYZ do jednego i tego samego miejsca w bazie, nie do kilku miejsc Ten post edytował wree 23.07.2010, 20:10:11 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 82 Pomógł: 22 Dołączył: 20.07.2010 Ostrzeżenie: (0%) ![]() ![]() |
ten kod ktory wczesniej podalem znajduje wszystkie 3 pasujace wyrazenia (nie wnikam w poprawnosc Twoich wyrazen regularnych, bo nie wiem czego bedziesz szukal dlatego uproscilem sobie to w kodzie. natomiast jesli wyrazenie jest ok to nie powinno miec wplywu na reszte) i wypisuje je. preg_match_all zapisuje do tablicy $wynik[0] wszystkie dopasowania. pozniej foreachem mozna je albo wypisac, albo zrobic z nich jeden string
"foreach to raczej do odczytu." - musisz jakos po wynikach (tablicy) wywolania preg_match_all przejsc. "zapisać już wybrany i ułożony ABCtaXYZ, ABCtbXYZ, ABCtcXYZ do jednego i tego samego miejsca w bazie, nie do kilku miejsc" - na wyjsciu tego kodu jest: ABCtaXYZ,ABCtbXYZ,ABCtcXYZ nie o to Ci wlasnie chodzilo? |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 04:36 |