χρειάζομαι λίγη βοήθεια με strings & arrays

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

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

Απάντηση
mixahlos
Δημοσιεύσεις: 3
Εγγραφή: 09 Μάιος 2006 00:53
Επικοινωνία:

χρειάζομαι λίγη βοήθεια με strings & arrays

Δημοσίευση από mixahlos » 21 Νοέμ 2011 00:40

Καλησπέρα,
ξεκίνησα να διαβάζω php.
έχω ξεκινήσει λοιπόν ένα scriptάκι που θέλω να κάνει το εξής :
ο χρήστης δίνει σε ένα textarea ένα κείμενο (text) το οποίο εγώ παίρνω με με post και πρέπει να το επεξεργαστώ για να του φέρω ανάλογο αποτέλεσμα.

το κείμενο που δέχομαι είναι της μορφής :

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

PC 1034
blah blah blah ...
PC 1128
blah blah blah
blah blah blah ...
...

MAC 986
blah blah blah
blah blah blah ...
...
PC 8549
blah blah blah
blah blah blah ...
...

MAC 9645
blah blah blah ...
...
αυτό που θέλω εγώ είναι :

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

$my_array[0] : PC 1034
blah blah blah ...
...

$my_array[1] :PC 1128
blah blah blah
blah blah blah ...
...

$my_array[2] :MAC 986
blah blah blah
blah blah blah ...
...

$my_array[3] :PC 8549
blah blah blah
blah blah blah ...
...

$my_array[4] :MAC 9645
blah blah blah ...
...

αυτό που θέλω να κάνω λοιπόν είναι να το κάνω split ή explode σε ένα array.

εδώ αντιμετοπίζω κάποια προβλήματα προβλήματα
αν κάνω :
$my_array = preg_split('/PC|MAC/i', $usr_input, -1, PREG_SPLIT_NO_EMPTY);

το πρόβλημα είναι πως η preg_slpit και η explode μου αφαιρεί τα patterns απο το αποτέλεσμα και αυτό που παίρνω είναι :

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

$my_array[0] :1034
blah blah blah ...
...

$my_array[1] :1128
blah blah blah
blah blah blah ...
...

$my_array[2] :MAC 986
blah blah blah
blah blah blah ...
...

$my_array[3] :8549
blah blah blah
blah blah blah ...
...

$my_array[4] :9645
blah blah blah ...
...
ευχαριστώ για το ενδιαφέρον.

mixahlos
Δημοσιεύσεις: 3
Εγγραφή: 09 Μάιος 2006 00:53
Επικοινωνία:

χρειάζομαι λίγη βοήθεια με strings & arrays

Δημοσίευση από mixahlos » 21 Νοέμ 2011 03:23

λοιπόν, έκανα κάτι το οποίο δούλεψε
πρόσθεσα 3 χαρακτήρες (δεν έβαλα έναν ωστε να μην υπάρχει πιθανότητα να υπάρξει κατα τύχη ίδιος delimiter)

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

	$patterns = array('/PC/i', '/MAC/i');
	$replacement = array('@@@PC', '@@@MAC');
	$delimiterAr = preg_replace($patterns, $replacement, $report, -1);
και εδώ πλέον κάνω split με τους χαρακτήερς που δεν με ενδιαφέρουν.

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

	$my_array = preg_split('/@@@/' , $delimiterAr, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
αν πιστεύετε πως είναι λάθος η προσέγγισή μου θα ήθελα να με ενημερώσετε παρακαλώ.

Απάντηση

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

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

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