Toon posts:

[php] caps tellen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hey,

kun je met PHP (kon zelf geen functie vinden) het aantal caps (bijv. in samenwerking met substr_count) in een string tellen?

Verwijderd

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
function caps($s) {
    for($i=0; $i<strlen($s); $i++) {
         if($s[$i] >= "A" and $s[$i] <= "Z") {
             $caps++;
         }
    }
    return $caps;
}

$text = "Bhjdfhk HjhafjH akjfhakh J";
echo caps($text);
?>

Ofzo.

Verwijderd

En natuurlijk even handiger... |:(
PHP:
1
2
3
4
<?
$text = "Bhjdfhk HjhafjH akjfhakh J";
echo preg_match_all("/[A-Z]/", $text, $match);
?>

:P

  • Tim
  • Registratie: Mei 2000
  • Laatst online: 04-08-2025

Tim

Ik dacht al, zie ik dat nou goed :? :P
Arien met een veel te ingewikkeld antwoord :P

Verwijderd

Timpie2000: Ik dacht al, zie ik dat nou goed :? :P Arien met een veel te ingewikkeld antwoord :P

:P Je moet niet "C" gaan doen in PHP omdat "Perl" niet altijd kan... |:(

Verwijderd

Topicstarter
dank je arien......

Verwijderd

Geen dank. :)

Verwijderd

Topicstarter
ik heb er nu mee beveiligd dat mensen geen username aan kunnen maken die meer caps dan lowers bevat, en ook niet meer cijfers dan letters.....

wel handig :)

Verwijderd

Ik doe het als volgt:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<?
function count_caps($string, $mode)



{



  $low_str = strtolower($string);







  $i = similar_text($string, $low_str, &amp;$p);







  if ($mode == "percent"){



    return 100 - $p;



  }



  elseif ($mode == "normal"){



    return strlen($string) - $i;



  }



  else {



    return -1;



  }



}
?>

Dit gebruik ik voor mijn gastenboek zodat men niet hele berichten in hoofdletters gaat intypen.

Verwijderd

Topicstarter
Op donderdag 22 februari 2001 23:18 schreef bmx_grover het volgende:
Ik doe het als volgt:
Dit gebruik ik voor mijn gastenboek zodat men hele berichten in hoofdletters gaat intypen.
Je bedoelt juist niet :)

Verwijderd

[TYPO]
Sorry, dat bedoel ik ja. NIET dus.
[/TYPO]

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 09:21

Janoz

Moderator Devschuur®

!litemod

Het kan natuurlijk wel ... verplicht 80% van je bericht in hoofdletters :)

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Verwijderd

bmx_grover: Ik doe het als volgt: ...

Dat zou bij mij dus zoiets worden:
PHP:
1
2
3
4
5
6
7
8
9
10
11
<?
function capsMax($text, $fraction) {

    if( preg_match_all("/[A-Z]/", $text, $match) > strlen($text)*$fraction ) {

        echo "Staat je CAPS LOCK vast?";

    }

}
?>
Pagina: 1