Bonjour,
je voudrais mettre une majuscule après certaines chaines de caractères comme par exemple après la chaîne " - " ou "... " (avec les espaces et sans les guillements)
Nova 24h - 07h00 - il est 7h... excuse-nous si on t'a réveillé c'est pas cool!
deviendrait
Nova 24h - 07h00 - Il est 7h... Excuse-nous si on t'a réveillé c'est pas cool!
Merci
Akhlan
Casse majuscule après certains caractères
Bonjour,
C'est malheureusement une des lacunes de la version actuelle. Ça fait partie des améliorations que je devrais faire en priorité (mais aucune idée de quand je m'en occuperai : ça peut très bien n'arriver que dans des années).
Au pire avec la fonction de remplacement de chaînes multiples on peut contourner le problème en définissant les 26 remplacements possibles :
- a devient - A
- b devient - B
etc.
Et encore 26 de plus pour le point suivi de l'espace
C'est malheureusement une des lacunes de la version actuelle. Ça fait partie des améliorations que je devrais faire en priorité (mais aucune idée de quand je m'en occuperai : ça peut très bien n'arriver que dans des années).
Au pire avec la fonction de remplacement de chaînes multiples on peut contourner le problème en définissant les 26 remplacements possibles :
- a devient - A
- b devient - B
etc.
Et encore 26 de plus pour le point suivi de l'espace
Re: Casse majuscule après certains caractères
Bjr
J'avais la même demande mais je pensais utiliser un méta caractère \U dans la chaine de substitution d'une RegExp.
Du genre : \U$1 pour remplacer la première "capture" par sa version en majuscule.
Hélas, ça n'est pas implémenté :-(
Je ne sais pas si c'est vous qui gèrez la substitution ou si c'est la lib tierce des RegExp qui le fait, mais si c'est vous, ce se serait p-e utile d'ajouter cette fonctionnalité (\U pour uppercase, \L pour lowercase).
Au fait, le lien dans l'aide vers la page de la lib concernant la syntaxe des RegExp est cassé (2.12).
Cdlt
J'avais la même demande mais je pensais utiliser un méta caractère \U dans la chaine de substitution d'une RegExp.
Du genre : \U$1 pour remplacer la première "capture" par sa version en majuscule.
Hélas, ça n'est pas implémenté :-(
Je ne sais pas si c'est vous qui gèrez la substitution ou si c'est la lib tierce des RegExp qui le fait, mais si c'est vous, ce se serait p-e utile d'ajouter cette fonctionnalité (\U pour uppercase, \L pour lowercase).
Au fait, le lien dans l'aide vers la page de la lib concernant la syntaxe des RegExp est cassé (2.12).
Cdlt
Re: Casse majuscule après certains caractères
Bonjour,
La substitution est aussi faite par la lib tierce.
Je ne connaissais même pas moi-même cette possibilité d'influencer sur la casse dans les regex, en effet ça pourrait être bien pratique.
Il faudrait que je regarde si quelque chose existe dans la lib pour ça, mais j'imagine que non : elle ne gère sans doute pas tout.
Merci pour l'info sur le lien mort, je pense que la nouvelle URL est la suivante:
https://regexpstudio.com/en/regexp_syntax.html
https://regexpstudio.com/fr/regexp_syntax.html
Je vais corriger ça pour la prochaine mise à jour
La substitution est aussi faite par la lib tierce.
Je ne connaissais même pas moi-même cette possibilité d'influencer sur la casse dans les regex, en effet ça pourrait être bien pratique.
Il faudrait que je regarde si quelque chose existe dans la lib pour ça, mais j'imagine que non : elle ne gère sans doute pas tout.
Merci pour l'info sur le lien mort, je pense que la nouvelle URL est la suivante:
https://regexpstudio.com/en/regexp_syntax.html
https://regexpstudio.com/fr/regexp_syntax.html
Je vais corriger ça pour la prochaine mise à jour
Re: Casse majuscule après certains caractères
Bonjour
Merci de v/réponse.
En fait, il semblerait que ce soit (plus ou moins) supporté par la lib, à lire la description de la fonction Subsitute (et non Replace) dans la doc en ligne ici https://regexpstudio.com/en/tregexpr_interface.html
A vrai dire, je ne comprends pas bien à quoi sert cette fonction Substitute (par rapport à Replace), et je pense que vous utilisez Replace d'après un coup d'oeil rapide de vos sources.
D'autre part, peut-être que ces "modifiers" \U etc. listés sont récents dans la lib ?
En tous cas, ce serait formidable de les intégrer d'une façon ou d'une autre dans une prochaine version. D'avance merci !
Merci de v/réponse.
En fait, il semblerait que ce soit (plus ou moins) supporté par la lib, à lire la description de la fonction Subsitute (et non Replace) dans la doc en ligne ici https://regexpstudio.com/en/tregexpr_interface.html
A vrai dire, je ne comprends pas bien à quoi sert cette fonction Substitute (par rapport à Replace), et je pense que vous utilisez Replace d'après un coup d'oeil rapide de vos sources.
D'autre part, peut-être que ces "modifiers" \U etc. listés sont récents dans la lib ?
En tous cas, ce serait formidable de les intégrer d'une façon ou d'une autre dans une prochaine version. D'avance merci !
Re: Casse majuscule après certains caractères
Replace est un raccourci qui fait une bouche sur ExecNext / Substitute (cf ligne 3781 de RegExpr.pas, function TRegExpr.Replace)
Donc ça devrait déjà fonctionner avec le code actuel
Je ne pense pas qu'il y ait eu d'ajouts dans la lib : la version que j'utilise semble être la dernière (celle de 2004-2005)
Donc ça devrait déjà fonctionner avec le code actuel

Je ne pense pas qu'il y ait eu d'ajouts dans la lib : la version que j'utilise semble être la dernière (celle de 2004-2005)
Re: Casse majuscule après certains caractères
En consultant le code sur Github (https://github.com/masterandrey/TRegExp ... egExpr.pas), il semblerait qu'il y ait eu une issue sur le sujet https://github.com/masterandrey/TRegExpr/issues/2
Re: Casse majuscule après certains caractères
Même si le numéro de version est le même, il semble qu'il y ait eu pas mal de changements dans la lib depuis le temps...
J'essaierai de recompiler avec la dernière version à l'occasion
J'essaierai de recompiler avec la dernière version à l'occasion

Re: Casse majuscule après certains caractères
Bonjour,Efcis wrote: ↑2018-12-30 15:26:33 Bjr
J'avais la même demande mais je pensais utiliser un méta caractère \U dans la chaine de substitution d'une RegExp.
Du genre : \U$1 pour remplacer la première "capture" par sa version en majuscule.
Hélas, ça n'est pas implémenté :-(
Je ne sais pas si c'est vous qui gèrez la substitution ou si c'est la lib tierce des RegExp qui le fait, mais si c'est vous, ce se serait p-e utile d'ajouter cette fonctionnalité (\U pour uppercase, \L pour lowercase).
Au fait, le lien dans l'aide vers la page de la lib concernant la syntaxe des RegExp est cassé (2.12).
Cdlt
Avez vous intégré la possibilité de changer de case par expression régulière (\U$1 \L$2 ou \U\1 \L\2) ?
Cordialement
Re: Casse majuscule après certains caractères
Bonjour, désolé je n'ai toujours pas pris le temps de m'occuper de cela 
