Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Luc.Habert.00__arjf
Paul Lennon :
Je cherche une regexp pour trouver des patterns du genre {sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas de } dans le groupe.
Je ne suis pas sûr de bien comprendre la question. Si tu veux une regexp qui matche des expressions bien parenthésées, c'est impossible. La solution consiste à se placer dans un mode pour lequel les accolades sont des délimiteurs, et le un quote, comme le mode TeX, puis se placer sur l'accolade ouvrante et utiliser forward-sexp (C-M-f) pour se déplacer à l'accolade fermante.
Paul Lennon :
Je cherche une regexp pour trouver des patterns du genre
{sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas de
} dans le groupe.
Je ne suis pas sûr de bien comprendre la question. Si tu veux une regexp qui
matche des expressions bien parenthésées, c'est impossible. La solution
consiste à se placer dans un mode pour lequel les accolades sont des
délimiteurs, et le un quote, comme le mode TeX, puis se placer sur
l'accolade ouvrante et utiliser forward-sexp (C-M-f) pour se déplacer à
l'accolade fermante.
Je cherche une regexp pour trouver des patterns du genre {sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas de } dans le groupe.
Je ne suis pas sûr de bien comprendre la question. Si tu veux une regexp qui matche des expressions bien parenthésées, c'est impossible. La solution consiste à se placer dans un mode pour lequel les accolades sont des délimiteurs, et le un quote, comme le mode TeX, puis se placer sur l'accolade ouvrante et utiliser forward-sexp (C-M-f) pour se déplacer à l'accolade fermante.
Paul Gaborit
À (at) Tue, 11 Mar 2008 17:44:43 +0100, Paul Lennon écrivait (wrote):
Bonjour à tous,
Je cherche une regexp pour trouver des patterns du genre {sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas de } dans le groupe.
Une idée ?
De manière générale, un moteur de regexp ne peut pas gérer les expressions correctement imbriquées de niveau quelconque. Certains moteurs de regexp (comme celui de Perl mais je ne pense pas que ce soit le cas de celui d'emacs) savent le faire. Mais ce sont des extensions et on ne devrait plus appeler cela des regexp (ce n'est plus /regular/ ou rationnel).
Maintenant, si on se limite à un nombre de niveaux bien précis on peut faire un truc comme ci-dessous.
À (at) Tue, 11 Mar 2008 17:44:43 +0100,
Paul Lennon <paul@free.fr> écrivait (wrote):
Bonjour à tous,
Je cherche une regexp pour trouver des patterns du genre
{sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas
de } dans le groupe.
Une idée ?
De manière générale, un moteur de regexp ne peut pas gérer les
expressions correctement imbriquées de niveau quelconque. Certains
moteurs de regexp (comme celui de Perl mais je ne pense pas que ce
soit le cas de celui d'emacs) savent le faire. Mais ce sont des
extensions et on ne devrait plus appeler cela des regexp (ce n'est
plus /regular/ ou rationnel).
Maintenant, si on se limite à un nombre de niveaux bien précis on peut
faire un truc comme ci-dessous.
À (at) Tue, 11 Mar 2008 17:44:43 +0100, Paul Lennon écrivait (wrote):
Bonjour à tous,
Je cherche une regexp pour trouver des patterns du genre {sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas de } dans le groupe.
Une idée ?
De manière générale, un moteur de regexp ne peut pas gérer les expressions correctement imbriquées de niveau quelconque. Certains moteurs de regexp (comme celui de Perl mais je ne pense pas que ce soit le cas de celui d'emacs) savent le faire. Mais ce sont des extensions et on ne devrait plus appeler cela des regexp (ce n'est plus /regular/ ou rationnel).
Maintenant, si on se limite à un nombre de niveaux bien précis on peut faire un truc comme ci-dessous.
Je cherche une regexp pour trouver des patterns du genre {sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas de } dans le groupe.
Une idée ?
merci d'avance.
Pour préciser mon idée je voudrais transformer
{{sqrt{2}}over{sqrt{25}}}
en
drac{sqrt{2}}{sqrt{25}}
j'espère avoir été plus clair.
Paul Gaborit
À (at) Tue, 11 Mar 2008 18:09:54 +0100, Paul Gaborit écrivait (wrote):
À (at) Tue, 11 Mar 2008 17:44:43 +0100, Paul Lennon écrivait (wrote):
Bonjour à tous,
Je cherche une regexp pour trouver des patterns du genre {sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas de } dans le groupe.
Une idée ?
De manière générale, un moteur de regexp ne peut pas gérer les expressions correctement imbriquées de niveau quelconque. Certains moteurs de regexp (comme celui de Perl mais je ne pense pas que ce soit le cas de celui d'emacs) savent le faire. Mais ce sont des extensions et on ne devrait plus appeler cela des regexp (ce n'est plus /regular/ ou rationnel).
Maintenant, si on se limite à un nombre de niveaux bien précis on peut faire un truc comme ci-dessous.
À (at) Tue, 11 Mar 2008 18:09:54 +0100,
Paul Gaborit <Paul.Gaborit@invalid.invalid> écrivait (wrote):
À (at) Tue, 11 Mar 2008 17:44:43 +0100,
Paul Lennon <paul@free.fr> écrivait (wrote):
Bonjour à tous,
Je cherche une regexp pour trouver des patterns du genre
{sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas
de } dans le groupe.
Une idée ?
De manière générale, un moteur de regexp ne peut pas gérer les
expressions correctement imbriquées de niveau quelconque. Certains
moteurs de regexp (comme celui de Perl mais je ne pense pas que ce
soit le cas de celui d'emacs) savent le faire. Mais ce sont des
extensions et on ne devrait plus appeler cela des regexp (ce n'est
plus /regular/ ou rationnel).
Maintenant, si on se limite à un nombre de niveaux bien précis on peut
faire un truc comme ci-dessous.
À (at) Tue, 11 Mar 2008 18:09:54 +0100, Paul Gaborit écrivait (wrote):
À (at) Tue, 11 Mar 2008 17:44:43 +0100, Paul Lennon écrivait (wrote):
Bonjour à tous,
Je cherche une regexp pour trouver des patterns du genre {sqrt{45}+1} evidemment {[^}]+} ne fonctionne que s'il n'y a pas de } dans le groupe.
Une idée ?
De manière générale, un moteur de regexp ne peut pas gérer les expressions correctement imbriquées de niveau quelconque. Certains moteurs de regexp (comme celui de Perl mais je ne pense pas que ce soit le cas de celui d'emacs) savent le faire. Mais ce sont des extensions et on ne devrait plus appeler cela des regexp (ce n'est plus /regular/ ou rationnel).
Maintenant, si on se limite à un nombre de niveaux bien précis on peut faire un truc comme ci-dessous.