Έλεγχος string για αριθμό...

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
rafinos
Δημοσιεύσεις: 301
Εγγραφή: 15 Μάιος 2011 00:20
Επικοινωνία:

Έλεγχος string για αριθμό...

Δημοσίευση από rafinos » 29 Δεκ 2011 16:37

Γεια σας θα ήθελα να ρωτήσω πως γίνεται να ελέγξω αν σε ένα string υπάρχει κάποιος αριθμός και αν γίνεται να αποθηκεύσω αυτόν τον αριθμό σε κάποια άλλη μεταβλητή...

πχ
από αυτό "ΑΔωδαφασδωΔβςεΔφασδ8+*-/*-φασδφα9"
γίνεται να πάρω το 8 και το 9 σε κάποιο άλλο string;;;;;;

(έλεγχο για τον αν υπάρχει αριθμός από όσο ξέρω μπορώ να κάνω με το preg_match αλλά δεν ξέρω αν υπάρχει η δυνατότητα να πάρω και τον αριθμό...)

Άβαταρ μέλους
burnmind
Script Master
Δημοσιεύσεις: 954
Εγγραφή: 26 Σεπ 2009 02:14
Τοποθεσία: UK
Επικοινωνία:

Έλεγχος string για αριθμό...

Δημοσίευση από burnmind » 29 Δεκ 2011 16:48

rafinos έγραψε:(έλεγχο για τον αν υπάρχει αριθμός από όσο ξέρω μπορώ να κάνω με το preg_match αλλά δεν ξέρω αν υπάρχει η δυνατότητα να πάρω και τον αριθμό...)
Από εδώ:
Parameters:
...
matches
If matches is provided, then it is filled with the results of search. $matches[0] will contain the text that matched the full pattern, $matches[1] will have the text that matched the first captured parenthesized subpattern, and so on.
Δες και τα παραδείγματα.

rafinos
Δημοσιεύσεις: 301
Εγγραφή: 15 Μάιος 2011 00:20
Επικοινωνία:

Έλεγχος string για αριθμό...

Δημοσίευση από rafinos » 29 Δεκ 2011 21:29

Ποιο είναι το λάθος σε αυτό;;;

Κώδικας: Επιλογή όλων

if(preg_match('/^[0-9]/',$familystate,$matches)){
				$count = sizeof($matches);
			}
το $familystate έχει μέσα δύο αριθμούς και δεν δημιουργήτε ο πίνακας matches... ή δεν δημιουργήτε σωστά.... μου λέει ότι το $count δεν έχει δηλωθεί :(

Άβαταρ μέλους
burnmind
Script Master
Δημοσιεύσεις: 954
Εγγραφή: 26 Σεπ 2009 02:14
Τοποθεσία: UK
Επικοινωνία:

Έλεγχος string για αριθμό...

Δημοσίευση από burnmind » 29 Δεκ 2011 21:45

Τώρα είδα ότι θες να πάρεις παραπάνω από ένα νούμερα. Δες το παρακάτω παράδειγμα:

Κώδικας: Επιλογή όλων

$string = 'dadha1234gdf7adfhadfufhfd23jvjf';

if(preg_match('/\d+/',$string,$matches))
{
	print_r($matches); //εκτυπώνει Array ( [0] => 1234 )
}

if(preg_match_all('/\d+/',$string,$matches))
{
	print_r($matches); //εκτυπώνει Array ( [0] => Array ( [0] => 1234 [1] => 7 [2] => 23 ) )
}

rafinos
Δημοσιεύσεις: 301
Εγγραφή: 15 Μάιος 2011 00:20
Επικοινωνία:

Έλεγχος string για αριθμό...

Δημοσίευση από rafinos » 29 Δεκ 2011 21:58

και πως μπορώ τις τιμές του matches να τις περάσω σε κάποια τρίτη μεταβλητή;;;

γιατί εγώ αυτό που παίρνω από το print_r είναι

Κώδικας: Επιλογή όλων

 Array ( [0] => Array ( [0] => � [1] => � [2] => 15 ) )
και αν πάω για παράδειγμα να κάνω $x = $matches[2]; παίρνω σφάλμα....

εντάξει άστο τόσο μου κόβει... τώρα κατάλαβα ότι είναι δισδιάστατος :P

Σε ευχαριστώ πολύ φίλε μου!
Καλό σου βράδυ!

Άβαταρ μέλους
burnmind
Script Master
Δημοσιεύσεις: 954
Εγγραφή: 26 Σεπ 2009 02:14
Τοποθεσία: UK
Επικοινωνία:

Έλεγχος string για αριθμό...

Δημοσίευση από burnmind » 30 Δεκ 2011 03:20

Να 'σαι καλά :)

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες