je cherche à formatter un texte répondant à un certain nb de critères. Je ne sais pas du tout cmt m’y prendre. je vous donne un exemple ci dessous.
(précision: je ne vous demande pas de me le faire, mais de me donner des pistes :)) merci
note: cela fonctionne par lignes.
A B "posté par" C-D-E-A F "le" G
H
I
...
A: entier de 1 à 5 chiffres
B: nombre d’espace indeterminé
“posté par”: chaine de caractère
C: chaine de x caractère (x inderminé)
-: tiret
D: Lettre
-: tiret
E: chaine de 3 caractères
-: tiret
A: cf plus haut
F: nombre d’espace indeterminé
"le: chaine de caractère
G: date au format “10/06/2005 13:29”
H: ligne vide
I: chaine de caractère sur plusieurs lignes
…: on recommence avec le meme principe (d’autres valeurs)
Exemple:
123 posté par titib-P-ABC-123 le "10/06/2005 13:29"
bla bla
bla bla
4566 posté par tutub-P-DEF-4566 le "10/06/2005 13:30"
blu blu
blu blu
Le but est donc de fournir par un formulaire un texte de ce type et qu’il le formate ensuite comme suit (par exemple)
En d’autre terme, qu’il me formatte le texte selon un certain nb de critères permettant de l’exploiter ultérieurement. (voir éventuellement l’inclure dans une base de donnée.
edit: tiens, tant que j’y suis, je peux te demander une chose: est-ce que c’est un problème (je parle au niveau “idéologique”) de stocker des balises html dans une bdd. Pcq j’ai un champ text dans lequel je pense stocker le résultat de mon remplacement. L’avantage si je stocke mes balises html, c’est qu’à l’affichage je n’ai qu’à faire un select et d’afficher le contenu. Si je stocke ca sous forme brute et que je fais l’opération a l’affichage, à chaque affichage je dois stockerl’affaire.
Autre solution, stocker ca sous forme de fichier externe. Mais est-ce que ca a un interet?
edit2: j’ai un peu du mal avec ton exemple (rien à faire, les expressions régulières, chaque fois que je dois les utiliser je cafouille…)
tiens, tant que je te tiens (sans mauvais jeu de mot :heink:) une petite question qui n’a rien à voir avec ca:
j’ai une requete qui récupère le dernier enregistrement répondant à un critère:
SELECT * FROM table WHERE statut=1 ORDER BY id DESC LIMIT 1
pas de problème pour ca.
Maintenant, j’aimerai faire une requete qui récupères tous les enregistrement statut=1 SAUF celui là (en outre, tous les enregistrement, excepté le plus recent)
ca risque de bouffer plein de ressource… enfin, non en fait, mais ca fait un test en plus, et ca revient au meme pcq je dois également faire un select pour connaitre l’id en question. Donc autant tout faire dans ma requete mysql…
non?
edit: mysql ne gérant pas les requetes imbriqués dans ma version, je vais être obligé de faire deux requete et de faire un test…
une question que j’arrive pas à trouver (je continue à cherche en attendant): cmt faire n’importe quel caractère
j’aimerai récupérer une chaine de 1 à 5 nb [0-9]{1,5} suivit du signe “>” suvis d’une chaine de n caractères. Pas de problème pour le début mais je bloque pour la chaine inderminée (ca doit être une connerie)
bon, d’accord. Donc niveau perf, ca change rien (ne nélgigeons jamais les fractions de secondes :ane:) mais par contre je la trouve plus lisible (ca évite de devoir mettre des doubles quote et autre trucs chiant type \’ pour afficher '.
bon, je pense que je vais définitivment jeter mon ordi par la fenete. Je ne comprend absolument rien aux expressions régulière. J’ai lu je sais pas cb de site et rien n’y fais. Je comprends les exemples tous simples et dès que ca deviens un tant soit peu compliqué, je comprend plus rien… Comment ca se fait?
C’est logique : dans le premier cas tu stocke une chaîne de caractère de manière temporaire (mais tu la stocke), pour ensuite l’oublier avec echo. Donc oui : c’est plus lent en ce sens que les opérations ne sont pas les mêmes.
Dans le second cas tu envoies directement la chaîne au navigateur.