freestuff.gr αρχική σελίδα
 FAQFAQ    ΑναζήτησηΑναζήτηση   Λίστα ΜελώνΛίστα Μελών   Ομάδες ΜελώνΟμάδες Μελών   <b>Εγγραφή Μέλους</b>Εγγραφή Μέλους 
 ΠροφίλΠροφίλ   Επιλογές μέλους Επιλογές   Τα bookmarks μου Τα bookmarks μου   Προσωπικά μηνύματαΠροσωπικά μηνύματα 
  διαφήμιση  

Καλώς ήρθατε στο forum μας! Για να συμμετάσχετε στις συζητήσεις θα πρέπει να είσαστε μέλος. Γίνετε μέλος τώρα!.
 

Πρόβλημα με regular expression


 Forum index » Δημιουργία Web Sites, Γραφικών & Προγραμματισμός » PHP Προγραμματισμός και εφαρμογές » PHP Προγραμματισμός
Moderators:  PHP Moderators, Super-Moderators, WebDev Moderators
Εισαγωγή νέου Θέματος   Απάντηση στο Θέμα Σελίδα 2 από 3 [32 Μηνύματα]      Bookmarks Tags: regular Mark the topic unread :: Προηγούμενο θέμα :: Επόμενο θέμα
Σελίδα:  Προηγούμενο  1, 2, 3 Επόμενο
ΑποστολέαςΜήνυμα
gvre


Μέλος από: 14 Οκτ 2010
Μηνύματα: 256+
Περιοχή: Ηράκλειο Κρήτης
View users profile Visit posters website
ΜήνυμαΣτις: 23 Ιουν 2012 19:32    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Πρόσθεσε και το
κώδικας:
curl_setopt($login, CURLOPT_SSL_VERIFYPEER, false);

μαζί με τα υπόλοιπα options.

_________________
Web Design Ηράκλειο - Κατασκευή Ιστοσελίδων Ηράκλειο - Web Development - Επαγγελματικές Κάρτες
χυμοι | σπουδες στη βουλγαρια
poscore


Μέλος από: 06 Μαη 2012
Μηνύματα: 63

View users profile Visit posters website
ΜήνυμαΣτις: 23 Ιουν 2012 19:34    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

gvre ανέφερε:
Το echo $grades_data; δεν εμφανίζει κάτι;


Σορρυ αυτό το είχα ξεχάσει με τόσες σκοτούρες...αυτό εμφανίζει μια χαρά το αποτέλεσμα. Είναι πολύ μεγάλη σελίδα για να την κάνω paste εδώ αλλα δες το παραδειγμα παραπάνω. Κάπως έτσι είναι το κομμάτι που μου επιστρέφεται. είχα προβλημα με το encoding αλλα το έφτιαξα. Προσπάθησα να το κάνω output σε αρχείο αλλα στα ελληνικά έχει πρόβλημα με το encoding.
gvre


Μέλος από: 14 Οκτ 2010
Μηνύματα: 256+
Περιοχή: Ηράκλειο Κρήτης
View users profile Visit posters website
ΜήνυμαΣτις: 23 Ιουν 2012 22:11    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Αν μπορείς, αποθήκευσε τη σελίδα ως html και κάνε τη attach εδώ.

_________________
Web Design Ηράκλειο - Κατασκευή Ιστοσελίδων Ηράκλειο - Web Development - Επαγγελματικές Κάρτες
χυμοι | σπουδες στη βουλγαρια
poscore


Μέλος από: 06 Μαη 2012
Μηνύματα: 63

View users profile Visit posters website
ΜήνυμαΣτις: 24 Ιουν 2012 10:03    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

gvre ανέφερε:
Αν μπορείς, αποθήκευσε τη σελίδα ως html και κάνε τη attach εδώ.


Το έκανα



output.txt
 Description:
output of curl

Download
 Filename:  output.txt
 Filesize:  44.11 KB
 Downloaded:  51 Time(s)

gvre


Μέλος από: 14 Οκτ 2010
Μηνύματα: 256+
Περιοχή: Ηράκλειο Κρήτης
View users profile Visit posters website
ΜήνυμαΣτις: 24 Ιουν 2012 12:42    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Αποθήκευσε το output.txt κάπου, φτιάξε ένα php με τον παρακάτω κώδικα στον ίδιο φάκελο και τρέξε το. Σε εμένα λειτουργεί μια χαρά. Αν δεν παίξει, στείλε ένα output από την phpinfo() και τον κώδικά σου (attached) χωρίς το username και password.

κώδικας:
<?php
$grades_data = file_get_contents("output.txt");
$grades_data = str_replace('<tr', "\n<tr", $grades_data);

if (preg_match_all('/><td colspan="2" valign="top" class="topBorderLight">\(.*([0-9]{3})\) .*<span class="redfonts" \/><\/td>/', $grades_data, $matches)) {
        print_r($matches);
}else{
        echo "Huston we have a problem!";
}

_________________
Web Design Ηράκλειο - Κατασκευή Ιστοσελίδων Ηράκλειο - Web Development - Επαγγελματικές Κάρτες
χυμοι | σπουδες στη βουλγαρια
poscore


Μέλος από: 06 Μαη 2012
Μηνύματα: 63

View users profile Visit posters website
ΜήνυμαΣτις: 24 Ιουν 2012 13:00    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

gvre ανέφερε:
Αποθήκευσε το output.txt κάπου, φτιάξε ένα php με τον παρακάτω κώδικα στον ίδιο φάκελο και τρέξε το. Σε εμένα λειτουργεί μια χαρά. Αν δεν παίξει, στείλε ένα output από την phpinfo() και τον κώδικά σου (attached) χωρίς το username και password.

κώδικας:
<?php
$grades_data = file_get_contents("output.txt");
$grades_data = str_replace('<tr', "\n<tr", $grades_data);

if (preg_match_all('/><td colspan="2" valign="top" class="topBorderLight">\(.*([0-9]{3})\) .*<span class="redfonts" \/><\/td>/', $grades_data, $matches)) {
        print_r($matches);
}else{
        echo "Huston we have a problem!";
}


OX :O
κώδικας:
Array ( [0] => Array ( [0] => >(???109) Ge???? F?s??? ? [1] => >(???105) ?pe???st???? ????sµ?? ? [2] => >(???106) ??sa???? st?? ?????aµµat?sµ? [3] => >(???104) ?fa?µ?sµ??? G?aµµ??? ???eß?a [4] => >(???108) ??sa???? st??? ?/? [5] => >(???111) ??????? ? [6] => >(???201) Ge???? F?s??? ?? [7] => >(???205) ?pe???st???? ????sµ?? ?? [8] => >(???208) ?????aµµat?sµ?? se C [9] => >(???210) ??a???t? ?a??µat??? [10] => >(???209) ??f?a?? S?ed??s? [11] => >(???211) ??????? ?? [12] => >(???301) ???a??t?te? [13] => >(???302) ??µ?? ?ed?µ???? [14] => >(???304) ????? G??ss?? ?????aµµat?sµ?? [15] => >(???307) ????te?t????? ?p?????st?? [16] => >(???409) ??t??e?µe??st?ef?? ?????aµµat?sµ?? [17] => >(???401) ??sa???? st?? ????µ?t??? ?????s? [18] => >(???402) S?ed?as? ?a? ?????s? ???????µ?? [19] => >(???407) Te???a ?p?????sµ?? [20] => >(???405) ?e?t??????? S?st?µata [21] => >(???501) ?p?????st??? ?a??µat??? [22] => >(???509) S?µata ?a? S?st?µata [23] => >(???508) ??se?? ?ed?µ???? [24] => >(???065) ?s??µata ???t?a [25] => >(???904) ???????? [26] => >(???606) ???t?a ?p?????st?? [27] => >(???604) ?e???t? ???µ?s??? ) [1] => Array ( [0] => 109 [1] => 105 [2] => 106 [3] => 104 [4] => 108 [5] => 111 [6] => 201 [7] => 205 [8] => 208 [9] => 210 [10] => 209 [11] => 211 [12] => 301 [13] => 302 [14] => 304 [15] => 307 [16] => 409 [17] => 401 [18] => 402 [19] => 407 [20] => 405 [21] => 501 [22] => 509 [23] => 508 [24] => 065 [25] => 904 [26] => 606 [27] => 604 ) )

λειτουργειιιιι!!!!!!!! )) Όταν είναι μαζί με τον υπόλοιπο κώδικα τι παθαίνει όμως :/ Να δώσω όλο τον κώδικα σε attach?
gvre


Μέλος από: 14 Οκτ 2010
Μηνύματα: 256+
Περιοχή: Ηράκλειο Κρήτης
View users profile Visit posters website
ΜήνυμαΣτις: 24 Ιουν 2012 13:57    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Καλή ερώτηση
Δώσε τον και στείλε username & password με pm.

_________________
Web Design Ηράκλειο - Κατασκευή Ιστοσελίδων Ηράκλειο - Web Development - Επαγγελματικές Κάρτες
χυμοι | σπουδες στη βουλγαρια
poscore


Μέλος από: 06 Μαη 2012
Μηνύματα: 63

View users profile Visit posters website
ΜήνυμαΣτις: 24 Ιουν 2012 14:33    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

gvre ανέφερε:
Καλή ερώτηση
Δώσε τον και στείλε username & password με pm.


Έτοιμο και δες και στο pm.



file.txt
 Description:

Download
 Filename:  file.txt
 Filesize:  3.9 KB
 Downloaded:  121 Time(s)

gvre


Μέλος από: 14 Οκτ 2010
Μηνύματα: 256+
Περιοχή: Ηράκλειο Κρήτης
View users profile Visit posters website
ΜήνυμαΣτις: 24 Ιουν 2012 14:44    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Άλλαξα μόνο το pattern και το print_r($matches); σε print_r($matches[1]); και λειτουργεί σωστά.



file.txt
 Description:

Download
 Filename:  file.txt
 Filesize:  4.04 KB
 Downloaded:  103 Time(s)


_________________
Web Design Ηράκλειο - Κατασκευή Ιστοσελίδων Ηράκλειο - Web Development - Επαγγελματικές Κάρτες
χυμοι | σπουδες στη βουλγαρια
poscore


Μέλος από: 06 Μαη 2012
Μηνύματα: 63

View users profile Visit posters website
ΜήνυμαΣτις: 24 Ιουν 2012 22:38    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

gvre ανέφερε:
Άλλαξα μόνο το pattern και το print_r($matches); σε print_r($matches[1]); και λειτουργεί σωστά.


Σε ευχαριστώ πάρα πολύ για την βοήθεια σου φίλε μου Τώρα μένει αν δω ΓΙΑΤΙ δεν δούλευε το προηγούμενο.
jpk


Μέλος από: 09 Μαρ 2011
Μηνύματα: 256+

View users profile
ΜήνυμαΣτις: 25 Ιουν 2012 02:45    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

tango ανέφερε:

Metrics or it didn't happen. ToolTimes at work


Συμφωνώ απόλυτα μαζί σου … όταν έχω χρόνο θα κάνω ένα test σε δύο client side (JavaScript και ActionScript) και σε τρείς server side (PHP , Java και Perl) … σε ένα απλό loop ενός απλού regexp validation (ας πούμε αν είναι email). Ενδιαφέρουσα πρόταση … και πραγματικά δεν ξέρω τα αποτελέσματα (αν και ξέρω ότι στην PHP αν μπορείς να αποφύγεις τα regexps προσπάθησε)…
poscore


Μέλος από: 06 Μαη 2012
Μηνύματα: 63

View users profile Visit posters website
ΜήνυμαΣτις: 26 Ιουν 2012 14:57    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Καλησπέρα πάνω στο θέμα των regular expressions, θέλω να πάρω μια παράσταση όπου έχει έναν αριθμό απο 0 έως ΚΑΙ 10 Η την παύλα. Δεν ξέρω πολύ καλά την σύνταξη γι αυτό ήθελα βοήθεια :/

Μέχρι τώρα έχω καταφέρει να κάνω το εξής απλό: ([0-9]) αλλα μου λέιπει το 10 και η παύλα '-'.

Μπορεί αν βοηθήσει κάποιος? Ευχαριστώ πολύ!
gvre


Μέλος από: 14 Οκτ 2010
Μηνύματα: 256+
Περιοχή: Ηράκλειο Κρήτης
View users profile Visit posters website
ΜήνυμαΣτις: 26 Ιουν 2012 15:40    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Δοκίμασε το παρακάτω
^(10|[0-9]|-)$

_________________
Web Design Ηράκλειο - Κατασκευή Ιστοσελίδων Ηράκλειο - Web Development - Επαγγελματικές Κάρτες
χυμοι | σπουδες στη βουλγαρια
poscore


Μέλος από: 06 Μαη 2012
Μηνύματα: 63

View users profile Visit posters website
ΜήνυμαΣτις: 26 Ιουν 2012 15:50    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Τα έκανε χειρότερα. Το ^ και $ γιατί το βάζεις? :/

edit: όχι ότι το ήξερα και ψιλοτυχαία έβγαλα τα ^ και $ και δούλεψε. Σε ευχαριστώ
gvre


Μέλος από: 14 Οκτ 2010
Μηνύματα: 256+
Περιοχή: Ηράκλειο Κρήτης
View users profile Visit posters website
ΜήνυμαΣτις: 26 Ιουν 2012 17:45    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Χωρίς τα ^$, γίνεται match του pattern οπουδήποτε μέσα στο string. Κάποιες φορές τα χρειάζεσαι και κάποιες άλλες όχι.
Τρέξε τα παρακάτω παραδείγματα και θα καταλάβεις τη διαφορά.

κώδικας:
<?php
$pattern = '#^(10|[0-9]|-)$#';
echo "trying $pattern\n";
$data = array("10", "8", "-", "1102");
foreach($data as $d)
        printf("'$d' %s ok\n", preg_match($pattern, $d) ? "" : "not");

echo "\n-----------\n";

$pattern = '#(10|[0-9]|-)#';
echo "trying $pattern\n";
foreach($data as $d)
        printf("'$d' %s ok\n", preg_match($pattern, $d) ? "" : "not");

_________________
Web Design Ηράκλειο - Κατασκευή Ιστοσελίδων Ηράκλειο - Web Development - Επαγγελματικές Κάρτες
χυμοι | σπουδες στη βουλγαρια
Εμφάνιση Μηνυμάτων:   
Εισαγωγή νέου Θέματος   Απάντηση στο Θέμα Σελίδα 2 από 3 [32 Μηνύματα] Σελίδα:  Προηγούμενο  1, 2, 3 Επόμενο
Mark the topic unread :: Προηγούμενο θέμα :: Επόμενο θέμα
 Forum index » Δημιουργία Web Sites, Γραφικών & Προγραμματισμός » PHP Προγραμματισμός και εφαρμογές » PHP Προγραμματισμός
Τώρα είναι 23 Σεπ 2014 04:18 | All times are UTC + 2


Email This Page to Someone! add to Favorites

     Powered by p h p B B © 2001,2005 p h p B B Group
Για άμεση επικοινωνία με τον διαχειριστή του freestuff.gr στο email: freestuff.gr(παπάκι)gmail.com


Copyright © 1999-2013 Freestuff.gr All Rights Reserved  
Version Aegean, designed by N. Tsaganos