![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Hm..
Trafiłem na niezłą zagwozdke - powiedzmy że chce sprawdzić czy jakiś warunek pasuje do podanych zmiennych, np. [php:1:3f520c7c7b]<?php $ks="speniu"; $ip="80.50.89.141"; ?>[/php:1:3f520c7c7b] i teraz przydałoby się takie wyrażenie regularne, które dla takich np. wartości zwracałoby true lub false Kod s?en?u@80.5?.* // TRUE
*!*spe? ![]() *@80.5?.?9.1?1 // TRUE czyli jednym słowem, czy dana maska może pasować do danych zmiennych. uf, ale zakręciłem. ![]() -------------------- |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 110 Pomógł: 0 Dołączył: 4.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
8O :? ja tu nie widze zadnego schematu, systemacznosci :?:
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 22.10.2003 Skąd: Trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
Cytat Hm..
Trafiłem na niezłą zagwozdke - powiedzmy że chce sprawdzić czy jakiś warunek pasuje do podanych zmiennych, np. [php:1:a05005b612]<?php $ks="speniu"; $ip="80.50.89.141"; ?>[/php:1:a05005b612] i teraz przydałoby się takie wyrażenie regularne, które dla takich np. wartości zwracałoby true lub false Kod s?en?u@80.5?.* // TRUE
*!*spe? ![]() *@80.5?.?9.1?1 // TRUE czyli jednym słowem, czy dana maska może pasować do danych zmiennych. uf, ale zakręciłem. ![]() Yhmm, moze napisz co chcesz zrobic... -------------------- "Use the force - read the source"
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Mam dwie zmienne:
[php:1:337fed09c3]<?php $ks="speniu"; $ip="80.50.89.141"; ?>[/php:1:337fed09c3] Kod s?en?u@80.5?.* // TRUE
*!*spe? ![]() *@80.5?.?9.1?1 // TRUE Chciałbym znaleźć czy taka maska może się pojawić i jeżeli tak, to wyciągnąć ją ze stringu. -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Cytat Yhmm, moze napisz co chcesz zrobic...
Spenalzo chce napisać wyrażenie, które będzie sprawdzało, czy adres speniu@80.50.89.141 będzie pasował do różnych wariantów masek. Czyli coś takiego: [php:1:a67d9e7a2f]<?php $adres = "speniu@80.50.89.141"; $maska = "s?en?u@80.5?.*"; $rezultat = preg_match($adres, $maska); ?>[/php:1:a67d9e7a2f] No i oczywiście maska musi być odpowiednio przygotowana w krzaczki wyrażeń regularnych, które tylko adwol rozumie ![]() |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 110 Pomógł: 0 Dołączył: 4.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
no i w czym problem? w wyrazeniu? przeciez je ma...bo jesli chce inne to niech schemat poda
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Cytat no i w czym problem? w wyrazeniu? przeciez je ma...bo jesli chce inne to niech schemat poda
Mam tylko numer IP i ksywke - i chce sprawdzić czy dane IP i ksywa pasuje do danej maski, takiej jak na przykładzie powyżej. -------------------- |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Co, robisz tuning bota?
![]() Zainteresuj się funkcją fnmatch. Ona dopasowuje łańcuchy w/g regexpów shellowych (czyli takich jak są m.in. w ircu). W komentarzach jest też funkcja, która przerabia takie regexpy na perlowe. |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Cytat Co, robisz tuning bota?
![]() Ależ skąd ![]() ![]() Cytat Zainteresuj się funkcją fnmatch.
No niestety - php 4.3.0 ![]() -------------------- |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat No niestety - php 4.3.0
![]() A ta funkcja do przerabiania regexpoów shellowych na perlowe też Ci nie odpowiada? Poza tym, chyba najwyższy czas zrobić upgrade. 4.3.x już jest chyba na tyle długo, że można je uznać za stabilne. |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 315 Pomógł: 1 Dołączył: 6.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Chwila nie wiem czy dobrze kapuje, ale jeśli tak to nie moż na by tego wpakopwać do funkcji i napisać kilka wyrażeń warunkowych każda z innaczej sprawdzająca[php:1:a3ff226940]<?php
function cosi(){ if(ereg(kod)) echo "$kod"; if(ereg(kod)) echo "$kod"; if(ereg(kod)) echo "$kod"; } ?>[/php:1:a3ff226940] |
|
|
![]()
Post
#12
|
|
![]() Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Można by, ale jest ogromna liczba możliwości. A przecież od tego są regexpy (jesli się je umie).
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 315 Pomógł: 1 Dołączył: 6.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Myślałem że chodzi tylko o te trzy możliwości a o tych regexpach to wogóle nie słyszałem:)
|
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
regexp = regular expressions = wyrażenia regularne
-------------------- |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 315 Pomógł: 1 Dołączył: 6.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
A ja już myślałem że będe mógł się nauczyć nowych zakręconych funkcji:) Kurcze...
|
|
|
![]()
Post
#16
|
|
![]() Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
OK, chyba się udało
![]() [php:1:a4396f5cf2]<?php $adres = "nick@212.55.45.2"; $maska = "*!*nick@80. ![]() print(preg_match(toPreg($maska), $adres)); function toPreg($maska) { $tempArr1 = Array('.', '*!*', '*', '?'); $tempArr2 = Array('.', '*', '.*', '.'); $maska = str_replace($tempArr1, $tempArr2, $maska); Return '/^' . $maska . '$/i'; } ?>[/php:1:a4396f5cf2] |
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 315 Pomógł: 1 Dołączył: 6.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Wiem że nic nie wiem, ale gdzie tu jest jakieś wyrażenie regularne? no chyba że ten preg...
|
|
|
![]()
Post
#18
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
funkcja toPreg() takowe zwraca
|
|
|
![]()
Post
#19
|
|
![]() Grupa: Zarejestrowani Postów: 315 Pomógł: 1 Dołączył: 6.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
okej to ja się poducze a narazie nie przeszkadzam w poważnych kodach.
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 110 Pomógł: 0 Dołączył: 4.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Mam tylko numer IP i ksywke - i chce sprawdzić czy dane IP i ksywa pasuje do danej maski, takiej jak na przykładzie powyżej.
ok. Jasne. Wiec napisz jak ma ta maska wygladac! najakich warunkach ma sie opierac ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.08.2025 - 22:36 |