Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wyrażenie regularne
slaug
post
Post #1





Grupa: Zarejestrowani
Postów: 92
Pomógł: 0
Dołączył: 2.05.2003
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Cześć,

Potrzebuję wyrażenie regularne które sprawdzi czy w stringu nie występują następujące znaki
!@#$%^&*()<>?|/\[]{}`~+=
W zasadzie to wszystkie znaki nie będące liczbą, cyfrą bądź znakiem podkreślenia.

Z góry dziękuję za pomoc,

pozdrawiam,
Daniel
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Ociu
post
Post #2





Grupa: Moderatorzy
Postów: 1 566
Pomógł: 37
Dołączył: 14.05.2003
Skąd: Kraków




[a-zA-Z0-9_]
Go to the top of the page
+Quote Post
slaug
post
Post #3





Grupa: Zarejestrowani
Postów: 92
Pomógł: 0
Dołączył: 2.05.2003
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Ale takie wyrażenie sprawdzi jedynie czy w stringu występują znaki które napisałeś w nawiasie, a nie sprawdzi czy nie występują te o których ja napisałem.

No dobra, wróciłem do domu, nowe spojrzenie na problem i pierwsze rozwiązanie:

[\^\[\]\(\)\{\}\|\*\+?#&!@%]

Generalnie chodzi mi o wykluczenie przegrania pliu, który miałby śmieszne znaki, z którymi mogłby być potem problemy. Zrobiłem z wykorzystaniem powyższego wyrażenia i zdaje się, że działa, ale jak macie jakieś inne propozycje to zarzućcie.

pozdrawiam,
Daniel

Ten post edytował slaug 28.09.2005, 19:23:03
Go to the top of the page
+Quote Post
s_w_ir
post
Post #4





Grupa: Zarejestrowani
Postów: 315
Pomógł: 1
Dołączył: 6.08.2003
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Co Ty masz za problem, Ociu napisał Ci to najprościej jak sie da, chociaż to wypróbowałeś(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
  1. <?php
  2. $a = "$()klo*&^";
  3.  
  4. if(preg_match("/^[a-zA-Z0-9_]*$/",$a)) echo "good";
  5.  
  6. ?>

Cytat
W zasadzie to wszystkie znaki nie będące liczbą, cyfrą bądź znakiem podkreślenia.
To chcesz litery, czy "cyfry i liczby"??

A to wyrażenie regularne, jeżeli w stringu znajdą sie inne znaki niż w nawiasch kwadratowych, to nie przepuści, załatwione.

Ten post edytował s_w_ir 28.09.2005, 19:42:50
Go to the top of the page
+Quote Post
slaug
post
Post #5





Grupa: Zarejestrowani
Postów: 92
Pomógł: 0
Dołączył: 2.05.2003
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Zgadza się tylko zapomniałem o dopisaniu początka i końca czyli ^ $. Poza tym gwiazdka za nawiasem też w miarę potrzebna być sie zdaje (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) To co napisałeś oczywiście działa, to co ja wyżej napisałem też, ale Twoje bardziej mi się podoba, dzięki.

Pozwolę sobie jeszcze tylko dodać do tego kropkę o której zapomniałem wam napisać (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Czyli:

  1. <?php
  2. "/^[a-zA-Z0-9_.]*$/"
  3. ?>


Jeszcze raz dzięki.

pozdrawiam,
Daniel

Ten post edytował slaug 29.09.2005, 09:14:37
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.12.2025 - 23:47