WRAPPER REGEXP PHP EN JAVA

d_0_g_m Messages postés 2 Date d'inscription jeudi 20 avril 2006 Statut Membre Dernière intervention 26 avril 2006 - 26 avril 2006 à 14:27
ludosoft Messages postés 3 Date d'inscription lundi 6 juin 2005 Statut Membre Dernière intervention 14 juillet 2008 - 21 oct. 2008 à 15:18
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/37257-wrapper-regexp-php-en-java

ludosoft Messages postés 3 Date d'inscription lundi 6 juin 2005 Statut Membre Dernière intervention 14 juillet 2008
21 oct. 2008 à 15:18
Moi je trouve cette source très très pratique car je suis pas mal habitué à manipuler les fonctions PHP "ereg" etc. Disons que là tout de suite ça me fait gagner un temps fou pour un projet simple de migration de données entre 2 BDD...

Merci !
benmor Messages postés 49 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 27 novembre 2011 9
23 juin 2006 à 11:33
Bonjour,

Je suis un peu d'accord avec les autres de l'intérêt limité de ta source, par contre ce qui aurais été bien de voir, c'est les fonctions PHP du type "int ereg(string pattern, string string , array ®s)" qui écrit dans "regs" un tableau des captures données dans le masque. ( http://fr3.php.net/manual/fr/function.ereg.php )

Bonne continuation ;) .
brasseld Messages postés 7 Date d'inscription lundi 24 mars 2003 Statut Membre Dernière intervention 27 avril 2006
28 avril 2006 à 09:04
Ouais enfin, si tu veux tu la refais en une ligne si c'est au nombre de ligne que tu juges :
public static String eregi_replace(String patt,String remplacement,String subj) {
return subj.replaceAll(patt, remplacement);
}

Et j'ai pas envie d'écrire les autres mais c'est exactement pareil. En plus, tu fais explicitement quelque chose que Java fait implicitement avec sa classe String. La méthode indexOf permet de vérifier si ta chaîne contient une autre chaîne. La méthode split est également connue...

Bref, finalement je ne vois pas l'intérêt de ta source à moins que ce soit juste pour utiliser les noms de méthode à la PHP...
mdrjeuxvideo Messages postés 10 Date d'inscription dimanche 18 juillet 2004 Statut Membre Dernière intervention 1 mars 2007
27 avril 2006 à 13:06
->Neodante: Ces fonctions n'ont pas de relation directe avec les servlets, ils peuvent être utilisé dans java dans jsp, mais dans mon cas je les utilise dans des servlets.
->Neodante: conçernant ma présentation pour la source, je suis ouvert à toute proposition pour qu'il sert de bien au utilisateurs.
->Brasseld: oui, t'as raison je me suis pas rendu compte que l'objet String contient la même fonction sauf que dans ton cas t'as fais 2 ligne + une autre ligne pour réupérer la chaine, donc sera mieux d'utiliser ma fonction, en plus pour les programmeurs de PHP ils vont trouvé ça sympa, le syntaxe de PHP en java.
brasseld Messages postés 7 Date d'inscription lundi 24 mars 2003 Statut Membre Dernière intervention 27 avril 2006
27 avril 2006 à 08:52
Pour remplacer une chaine de caractére dans une chaine de caractere par une autre chaine, je faisais directement :
String s = "testtesttesttesttesttest";
s.replaceAll("te", "Te");

Maintenant si j'utilise sa méthode eregi_replace avec le pattern et le matcher, qu'elle est la meilleure méthode à utiliser et surtout qu'elle est la plus rapide. Car je dois remplacer des tag dans une page html du style <!--{{TAG_SELECT_SEMAINES}}--> par du contenu.

Pour moi les deux méthodes font la même chose, car je penser que le replaceAll de String créait implicitement un matcher et un pattern...
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
26 avril 2006 à 18:52
Salut,
Ta phrase "Ce code permet d'utiliser les fonctions de PHP en java" est très ambigue, puisque tu utilises du Java pour faire du Java, c'est simplement que tu as créé des fonctions qui sont les équivalents en terme de fonctionnalités identiques au fonction du même nom de PHP ...

Donc tu n'utilises absolument pas de fonctions PHP !!! Et encore moins de fonctions PHP en Java ...
Java 6 devrait pouvoir faire cela mais ici c'est pas le cas ;-)

++
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
26 avril 2006 à 17:26
Salut,
je ne vois vraiment pas le rapport avec des servlets dans ton code ... si tu l'utilises pour cela dans ton cas c'est autre chose ... c'est plutot ça qui me gene dans ta présentation de ta source, c'est implement quelques méthodes qui wrap un objet pour une utilsiation spécifique ...

++
mdrjeuxvideo Messages postés 10 Date d'inscription dimanche 18 juillet 2004 Statut Membre Dernière intervention 1 mars 2007
26 avril 2006 à 17:14
1. Il y a un rapport entre PHP et Servlets et les servlet sont issues de Java donc il y a une rapport entre java et php.
2. Pour profiter de la facilité de PHP à manipuler les éxpressions régulières j'ai cré ces fonctions, car en Java on doit à chaque fois déclarer 3 objets donc ça fait 3 ou 4 lignes de codes plus l'encombrement de la mémoire engendré, en PHP c'est facile une ligne suffit.
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
26 avril 2006 à 15:53
Idem que DOGM .. d'ailleurs on dit migrer et non immigrer ;-) Et aussi 'profiter de la puissance de PHP en utilisant java' ben non puisque tes fonctions sont bien en Java donc je vois pas où tu utilises la 'puissance' de PHP ... si ce n'est que tu as mis le même nom au méthode Java qu'au PHP afin de ne pas perdre ses réflexes PHP en passant à Java :s
d_0_g_m Messages postés 2 Date d'inscription jeudi 20 avril 2006 Statut Membre Dernière intervention 26 avril 2006
26 avril 2006 à 14:27
salut !!!
je ne comprend pas, quel rapport tu vois entre php et java ???
chacun son truc sauf si tu utilise java pour le web , dans ce cas pas besoin d'immigrer tu peux les utiliser tout les deux, sinon explique moi pour me corriger , merci :-)
Rejoignez-nous