Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sprawdź wielkie litery...
Forum PHP.pl > Forum > Przedszkole
patigo
Witam, prosze o pomoc. Potrzebuje funkcji która sprawdzi czy dany ciąg to sekwencja wilkich liter lub gdy większa częsc ciągu to wielkie litery.

Dziękuję i pozdrawiam.
Fipaj
Wyrazenia regularne:
  1. <?php
  2. $ciag = &#092;"CIAG DUZYCH ZNAKOW\";
  3. if (ereg('[A-Z]', $ciag) {
  4. // instrukcje jezeli prawda
  5. }
  6. else {
  7. // instrukcje jezeli falsz
  8. }
  9. ?>
dr_bonzo
preg_match( "/[A-Z]/", $string )

powinno zrwocic ilosc wystapien duzej litery, teraz porownujesz to z dlugoscia stringa (strlen()) i juz wiesz ktorych liter jest wiecej.

------
sprawdzilem:
  1. <pre>
  2. <?php
  3. $string = &#092;"SDFsfSfhDFgdGdfGsdfSFs\";
  4.  
  5. if ( preg_match_all( &#092;"/[A-Z]/\", $string, $wyniki ) === FALSE )
  6. {
  7. print( 'ERROR' );
  8. }
  9. else
  10. {
  11. print( &#092;"Ilosc wielkich liter: \" . count( $wyniki[ 0 ] ) . ' / ' . strlen( $string ) );
  12. }
  13. ?>
  14. </pre>
-- dziala
patigo
Bardzo dziękuję! Obydwie odpowiedzi zaspokoiły moje potrzeby:)
bendi
@dr_bonzo
Cytat("preg_match_all Manual")
returns the number of full pattern matches (which might be zero), or FALSE if an error occurred.
Mozna szybciej tak:
  1. <pre>
  2. <?php
  3. $string = &#092;"SDFsfSfhDFgdGdfGsdfSFs\";
  4.  
  5. if ( ( $iMatchesCount = preg_match_all( &#092;"/[A-Z]/\", $string )  ) === FALSE ){
  6.     print( 'ERROR' );
  7. }
  8. else{
  9.     print( &#092;"Ilosc wielkich liter: \" . $iMatchesCount . ' / ' . strlen( $string ) );
  10. }
  11. ?>
  12. </pre>


[edit]
@dr_bonzo winksmiley.jpg)
[/edit]
dr_bonzo
Zgadza sie -- widocznie wypadla mi ta kartka z manuala tongue.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.