THMMY.gr

Ηλεκτρονικοί Υπολογιστές και Τεχνικά Θέματα => Γενική συζήτηση, Απορίες, Τεχνολογικά Νεα, Εκθέσεις ... => Topic started by: edenaxas on October 16, 2012, 21:35:44 pm



Title: regexp
Post by: edenaxas on October 16, 2012, 21:35:44 pm
Hello!

Καποιος με ειδικες γνωσεις στο θεμα θα ήθελα να με βοηθησει :)

Ποια είναι η κανονική έκφραση για το παρακατω?

some_phrase1/random_string/some_phrase2

οπου τα some_phrase1 και some_phrase2 είναι γνωστα και σταθερα και χωρίζονται με το random_string με slash. Το random string είναι variable length.

παραδείγματα

πχ1:   little_brown_fox/θανατος_στον_ευτυχη_μπλετσα/jumped_over_the_lazy_cat
πχ2:   little_brown_fox/teenage_mutant_turtles/jumped_over_the_lazy_cat

 :)


Title: Re: regexp
Post by: Issle on October 16, 2012, 22:08:18 pm
Start_String.*End_String  :( ?

. = Match any
* = Match previous zero or more times

Νομίζω ...


Title: Re: regexp
Post by: edenaxas on October 16, 2012, 22:10:48 pm
Ναι κατι τετοιο σκεφτομουν αλλα ηθελα να το διπλοτσεκαρω :)

θα το δω και επι του πρακτεου


Title: Re: regexp
Post by: Δικαστής Μύρτιλος on October 16, 2012, 22:14:49 pm
Ακριβώς έτσι.

Για να τα δοκιμάζεις γρήγορα http://regexpal.com/

EDIT: Μπέρδεμα με slash.


Title: Re: regexp
Post by: Issle on October 16, 2012, 22:16:16 pm
Ωραίο online tool  ;) Bookmarked.


Title: Re: regexp
Post by: papanestor on October 17, 2012, 03:56:36 am
Τα "/" θα πρέπει να τα κάνεις escape με ένα "\" πριν (και όλους τους υπόλοιπους χαρακτήρες ελέγχου: *, +, $, ^, . (τελεία) αν θές να τους κάνεις match σαν απλούς χαρακτήρες).
Σε linux θα χρησιμοποιηθεί; Με grep ή perl ή κάτι άλλο σε userspace;
Σε ρωτάω επειδή σε kernelspace τα regular expressions διαφέρουν (δεν είναι τόσο ευέλικτα και έχουν κάποιες ψιλοδιαφορές).


Title: Re: regexp
Post by: c0ndemn3d on October 17, 2012, 04:21:41 am
Hello!

Καποιος με ειδικες γνωσεις στο θεμα θα ήθελα να με βοηθησει :)

Ποια είναι η κανονική έκφραση για το παρακατω?

some_phrase1/random_string/some_phrase2

οπου τα some_phrase1 και some_phrase2 είναι γνωστα και σταθερα και χωρίζονται με το random_string με slash. Το random string είναι variable length.

παραδείγματα

πχ1:   little_brown_fox/θανατος_στον_ευτυχη_μπλετσα/jumped_over_the_lazy_cat
πχ2:   little_brown_fox/teenage_mutant_turtles/jumped_over_the_lazy_cat

 :)
Εννοείς αυτό;

some_phrase1\/.+\/some_phrase2

edit: Αν το random string θες να μπορεί να είναι κενό, βάλε * αντί για +.


Title: Re: regexp
Post by: edenaxas on October 17, 2012, 05:01:08 am
ευχαριστώ παιδια, τελικα η λυση ήταν ενας συνδυασμος απο ολα :)

σε php:

preg_match_all("/some_phrase1\/.*\/some_phrase2/", $initial_string, $matches); 

ωραια φαση γενικα οι crawlers  ;)


Title: Re: regexp
Post by: Issle on October 17, 2012, 09:39:09 am
Apache Nutch ? Η φτιάχνεις δικό σου ?


Title: Re: regexp
Post by: edenaxas on October 17, 2012, 10:03:46 am
home made cooking :)