php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 28.07.2009, 11:53  
Neuer Benutzer
 
Registriert seit: 28.07.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
apfelsaft befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Zeichen im String zählen, aber nur die Buchstaben

Hallo liebe Forumnutzer.
Ich hoffe es kann mir einer helfen, denn über die Such habe ich nichts gefunden.

Ich habe eine Textbox in die der User einen Text eingibt. Wie ermittle ich die Anzahl der eingegebenen Buchstaben und ignoriere alles andere (Ziffern, Sonderzeichen, Leerzeichen)
Mit strlen bekomme ich ja "leider" alles. Kann man strlen evtl mit RegEx kombinieren und wenn wie?

Danke Euch!

Geändert von apfelsaft (28.07.2009 um 12:05 Uhr).
apfelsaft ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 28.07.2009, 12:01  
Benutzer
 
Benutzerbild von isam2k
 
Registriert seit: 03.10.2008
Beiträge: 55
PHP-Kenntnisse:
Anfänger
isam2k befindet sich auf einem aufstrebenden Ast
Standard

Damit suchst du nach Zahlen und unerwünschten Chars und lädst alle Ergebnisse in ein Array:
PHP: preg_match_all - Manual

Danach zählst du die Elemente im Array und zählst sie von dem Wert ab, den du mit strlen bekommen hast:
PHP: sizeof - Manual
__________________
Ich kann allem widerstehen - ausser der Versuchung
Oscar Wilde

Geändert von isam2k (28.07.2009 um 12:06 Uhr).
isam2k ist offline  
Alt 28.07.2009, 12:06  
Neuer Benutzer
 
Registriert seit: 28.07.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
apfelsaft befindet sich auf einem aufstrebenden Ast
Standard

Schön, hilft mir aber nicht
apfelsaft ist offline  
Alt 28.07.2009, 12:09  
Erfahrener Benutzer
 
Registriert seit: 06.01.2009
Beiträge: 145
nuna befindet sich auf einem aufstrebenden Ast
Standard

dann ist dir auch nicht zu helfen. isam2k hat dir doch einen vorschlag gemacht. mit preg_match_all alle buchstaben extrahieren und diese dann mit strlen zählen. was möchtest du denn noch?
nuna ist offline  
Alt 28.07.2009, 12:13  
Neuer Benutzer
 
Registriert seit: 28.07.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
apfelsaft befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nuna Beitrag anzeigen
mit preg_match_all alle buchstaben extrahieren und diese dann mit strlen zählen.
Sorry, ich habe leider keine Ahnung WIE ich das mache. Aus der Anleitung werde ich nicht schlau.
Kannst Du mir bitte einen Code posten?
Danke Euch
apfelsaft ist offline  
Alt 28.07.2009, 12:20  
Erfahrener Benutzer
 
Benutzerbild von mermshaus
 
Registriert seit: 14.06.2009
Beiträge: 1.733
PHP-Kenntnisse:
Fortgeschritten
mermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz sein
Standard

PHP-Code:
<?php // Datei-Encoding: UTF-8

/**
 * Counts all letters in an UTF-8 encoded string
 *
 * @param  string $s UTF-8 encoded string
 * @return int       Number of characters with "letter" property
 */
function utf8_count_letters($s)
{
    
$n 0;
    
$len strlen($s);
    
$i 0;

    while (
$i $len) {
        
// Get next character
        
$c $s[$i];
        if (
ord($c) < 0x80) {
            
// ASCII
            
$i++;
        } else {
            
// Multibyte string
            
$i++;

            while (
$i $len && ord($s[$i]) >= 0x80 && ord($s[$i]) < 0xC0) {
                
// Multibyte character (10xx xxxx)
                
$c .= $s[$i];
                
$i++;
            }
        }

        
// Check whether character has "letter" property
        
if (preg_match('/\p{L}/u'$c) == 1) {
            
$n++;
        }
    }

    return 
$n;
}

echo 
utf8_count_letters('78 ächzende Türen aus Қазақстан');

Geändert von mermshaus (28.07.2009 um 14:33 Uhr). Grund: Hinweis auf Datei-Encoding hinzugefügt
mermshaus ist gerade online  
Alt 28.07.2009, 12:20  
Erfahrener Benutzer
 
Registriert seit: 08.04.2009
Beiträge: 324
Creator befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Sorry, ich habe leider keine Ahnung WIE ich das mache. Aus der Anleitung werde ich nicht schlau.
Du hast ganze 5 min lang die Doku durchgelesen und fragst dich warum du nicht schlau draus wirst?

Reguläre Ausdrücke lernt man auch nicht in 5 min.
Daher solltest du dich damit mal befassen.
Creator ist offline  
Alt 28.07.2009, 13:40  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Du kannst auch den Text in eine Variable kopieren, alle Sonderzeichen entfernen (reg. Ausdrücke) und dann die Länge prüfen.

@mermhaus:
strlen kann nicht mit Multibyte-Zeichen umgehen. Und beim zeichenweisen Zugriff über [index] bin ich mir auch nicht ganz sicher. Du solltest Funktionen wie mb_strlen und mb_substr verwenden, wenn die Funktion schon utf-8irgendwas heisst.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 28.07.2009, 14:20  
Erfahrener Benutzer
 
Registriert seit: 06.01.2009
Beiträge: 145
nuna befindet sich auf einem aufstrebenden Ast
Standard

übrigens: strlen zählt umlaute als doppeltbuchstaben.

PHP-Code:
echo strlen('ä'); // Ausgabe = 2 
nuna ist offline  
Alt 28.07.2009, 14:21  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Je nach Codierung.
Zitat:
Zitat von nikosch
Du solltest Funktionen wie mb_strlen und mb_substr verwenden
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Zeichen zählen Textarea Kein Genie JavaScript, Ajax und mehr 2 07.06.2009 19:23
Records mit PHP ? SimStar001 PHP Tipps 2009 11 08.04.2009 15:14
[Erledigt] in einem string an bestimmter stelle ein zeichen einfügen litterauspirna PHP Tipps 2008 2 21.12.2008 12:06
Buchstaben zählen und überprüfen, ob er im Wort ist? SamuelWulf PHP Tipps 2008 5 28.09.2008 15:16
Hochzählen mit Zahlen und Buchstaben (a und b) gaston01 PHP Tipps 2008 15 22.09.2008 18:03
PHP5 SOAP - Problem mit Arrays Calexico PHP-Fortgeschrittene 0 11.09.2008 12:06
String, Zeichen ersetzen mit Ausnahmen! I-Spy PHP Tipps 2006 3 26.05.2006 11:31
Ziffern und Sonderzeichen in einem String zählen PHP Tipps 2006 2 15.03.2006 12:22
Kombination: Zeichen zählen / - ersetzen King2k PHP Tipps 2005-2 2 24.10.2005 20:44
Wie prüfe ich einen String ob nur Zahlen enthalten sind ? PHP Tipps 2005 7 31.05.2005 13:02
ASCII - Zeichen in String einbinden faux PHP Tipps 2005 10 28.05.2005 18:29
nicht erlaubte Zeichen im SQL - String Datenbanken 0 16.10.2004 11:47
Buchstaben, Wörter oder Zeichen zählen Datenbanken 1 27.08.2004 08:09
Funktion zum zählen von Zeichen in einem String PHP Tipps 2004 2 15.07.2004 16:00

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
java string zählen, java string zeichen zählen, java string buchstaben zählen, java buchstaben zählen, http://www.php.de/php-einsteiger/57534-erledigt-zeichen-im-string-zaehlen-aber-nur-die-buchstaben.html, c# buchstaben zählen, java zeichen in string zählen, sql zeichen zählen, c# zeichen zählen, sql zeichen in string zählen, string zeichen zählen java, java buchstaben zählen string, buchstaben im string zählen java, buchstaben zählen java, c# bestimmte zeichen zählen, string zählen java, java string bestimmtes zeichen zählen, java string bestimmte zeichen zählen, php buchstaben zählen, java zeichen zählen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:23 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum