php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.09.2005, 09:15  
Gast
 
Beiträge: n/a
Standard Prüfen ob Zahl in String vorhanden ist

Hi all,

folgendes Problem:
Ich habe einen String der so aussieht:
Code:
strTest = "21,3,42,54,64,32,54"
Ich würde gerne prüfen, ob z.B die Zahl 42 bereits in diesem String enthalten ist.
Mit fällt allerdings grade kein einfacherer/eleganterer Weg ein als den String in ein Array zu zerstücken, diesen in einer While-Schleife zu durchzulaufen und jedes Element gegen "42" zu prüfen".

Gibts da vieleicht eine geschicktere Lösung ?
Vielen Dank im vorraus,
greets,
ben
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 07.09.2005, 09:35  
Gast
 
Beiträge: n/a
Standard

Folgendermaßen müsstest du das hinbekommen:

PHP-Code:
preg_match("/42/",$strTest); 
Wenn die Zahl im String enthalten ist, wird true zurückgeliefert, ansonsten false.
Näheres zu dieser Funktion findest du hier: preg_match
 
Alt 07.09.2005, 09:42  
Gast
 
Beiträge: n/a
Standard

Vielen Dank, ich werde es gleich ausprobieren.
gruß ben
 
Alt 07.09.2005, 10:32  
Gast
 
Beiträge: n/a
Standard

Zitat:
preg_match("/42/",$strTest);
Schnelle Antwort aber nicht sicher.

Wenn zb.

strTest = "21,3,4299,54,64,32,54"

steht, wird auch die 42 erkannt, was aber falsch wäre, da jetzt 4299 im String steht
 
Alt 07.09.2005, 10:46  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von CIX88
Zitat:
preg_match("/42/",$strTest);
Schnelle Antwort aber nicht sicher.

Wenn zb.

strTest = "21,3,4299,54,64,32,54"

steht, wird auch die 42 erkannt, was aber falsch wäre, da jetzt 4299 im String steht
Ja, da muss ich dir recht geben. Aber ein

Zitat:
preg_match("/42\b/",$strTest);
sollte dem dann Abhilfe schaffen. Findet sich aber auch auf der geposteten Website^^.
 
Alt 07.09.2005, 11:02  
Gast
 
Beiträge: n/a
Standard

Zitat:
sollte dem dann Abhilfe schaffen. Findet sich aber auch auf der geposteten Website^^.
Nene nicht ganz.
Wenn du schon \b benutzt, dann bitte auf beiden Seiten

preg_match("/\b42\b/",$strTest);

... kann ja sein und es kommt 9942 vor
 
Alt 07.09.2005, 11:05  
XLB
Erfahrener Benutzer
 
Registriert seit: 31.07.2005
Beiträge: 1.126
PHP-Kenntnisse:
Fortgeschritten
XLB
Standard

Hmm...

Soweit mir bekannt, sucht "\b" nach "Wortgrenzen", also nach Leerzeichen vor/hinter/beides dem Suchbegrif (je nach dem wie notiert). Leerzeichen (ergo Wortgrenzen) gibbet hier aber nicht ...

Man müsste mit RegEx folgende Bedingungen prüfen :

1. vor dem "Suchbegriff" steht nix (wenn erstes Element) oder ein Komma
2. davor und dahinter steht ein Komma
3. vor dem Begriff ein Komma, dahinter nix (wenn letztes Element)

Ma sehen, ob iich dat hinkrich ...
XLB ist offline  
Alt 07.09.2005, 11:12  
Erfahrener Benutzer
 
Registriert seit: 27.10.2004
Beiträge: 1.093
PHP-Kenntnisse:
Fortgeschritten
Chr!s
Standard

PHP-Code:
<?php
// Generell:
// \d{1,} findet mindestens eine, aber auch mehr Zahlen
preg_match_all("#,?\d{1,},?#"$string$matches);

// Oder eben für die 42:
preg_match_all("#,?42,?#"$string$matches);
?>
Chr!s ist offline  
Alt 07.09.2005, 11:22  
Gast
 
Beiträge: n/a
Standard

Zitat:
preg_match_all("#,?42,?#", $string, $matches);
Das ist genauso so ein Irrtum wie oben schonmal.
Was soll das ? vor der 42 ?
 
Alt 07.09.2005, 11:32  
Gast
 
Beiträge: n/a
Standard

Zitat:
Soweit mir bekannt, sucht "\b" nach "Wortgrenzen", also nach Leerzeichen vor/hinter/beides dem Suchbegrif
Naja im Prinzip nur halb richtig.
Es muss nicht unbedingt ein Wort sein, was innerhalb von \b steht.

Kleines Beispiel:
http://www.cix88.de/cix_php/demo/cix...20050907112913
 
 


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
Zahl aus String extrahieren GSJLink PHP Tipps 2008 5 13.01.2008 19:13
Event abfangen Ambience JavaScript, Ajax und mehr 4 30.08.2007 14:36
String auslesen Shaira PHP Tipps 2006 11 01.12.2006 17:52
string vorhanden? Trumpfass PHP Tipps 2006 1 24.08.2006 21:52
string auf bestehen �berpr�fen und so lange zahl anh�n Promaetheus PHP Tipps 2006 10 26.04.2006 23:05
preg_replace: Zahl anstatt String FI-DD PHP-Fortgeschrittene 4 02.10.2005 14:50
zahl ausgeben wenn gerade Tschuu PHP Tipps 2005-2 6 07.07.2005 19:20
[JS] Regex: Zahl aus String auslesen [gelöst] freq.9 HTML, Usability und Barrierefreiheit 3 27.06.2005 12:02
Prüfung auf Zahl, Wert in PHP? PHP Tipps 2005-2 1 07.06.2005 10:32
string -> int, nur wenn string zahl ist PHP Tipps 2005-2 3 06.06.2005 12:33
[Erledigt] String in Zahl umwandeln PHP Tipps 2005 1 12.05.2005 11:39
String nach jeder Zahl teilen yoshy PHP Tipps 2005 8 04.05.2005 03:28
[Erledigt] Sortierung nach Zahl in einem String Datenbanken 2 02.05.2005 16:01
where string von einer funktion zu anderen transportieren PHP Tipps 2005 5 03.03.2005 16:29
String mit Leerzeichen auffüllen HTML, Usability und Barrierefreiheit 2 27.10.2004 18:47

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php prüfen ob zahl enthalten, php string vorhanden, http://www.php.de/php-tipps-2005-2/30417-pruefen-ob-zahl-string-vorhanden-ist.html, javascript string auf zahlen prüfen, php prüfen ob zahl in string, javascript string vorhanden, php prüfen ob string enthalten, php zahl vorhanden, php prüfen ob string zahlen enthält, prüfen ob zahl in string php, javascript string prüfen ob vorhanden, php prüfen ob zahl im string, javascript prüfen ob zahl in string, php prüfen ob zahl, php prüfen ob string zahl enthält, js string auf zahlen prüfen, php prüfen ob string vorhanden, php prüfen ob string existiert, php string auf zahlen prüfen, javascript string auf zahl prüfen

Alle Zeitangaben in WEZ +1. Es ist jetzt 17:09 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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.