FindChangeList : corriger les numéros de téléphone et les horaires  (Lu 5331 fois) Partager ce sujet Imprimer

1 B


patrick.cazaux  25 avril 2014 : 11:56

Bonjour,
J'espère que le sujet n'est pas déjà passé, en tout cas je ne l'ai pas trouvé.

J'aimerais trouver deux choses dans ce super script :
- le formatage des numéros de téléphone avec des espaces insécables ou des fines entre les tranches ou la transformation du numéro en "sans retour"
- la mise en forme des horaires : "20H30" devrait être "20 h 30" avec des insécables, voire des fines. La question est plus compliquée pour "20H" qui peut devenir "20 h" ou "20 heures" selon le contexte. Mais peut-être y a-t-il une solution ?

Merci d'avance

IP archivée


Merlin  26 avril 2014 : 19:34

Bonjour et bienvenue,

Ces corrections un peu particulières ne sont pas intégrées dans le fichier fourni par abracadabraPDF pour plusieurs raisons.
Cependant on peut faire soit avec le Rechercher-remplacer, soit en personnalisant le fichier FindChangeList.txt.
Par-contre il faut savoir que le script FindChangebyList.js ne peut pas appliquer l'attribut Sans retour.


• Pour les numéros de téléphone avec le Rechercher-remplacer GREP :

Rechercher \(?(\d\d)\)?[-._ ]?(\d\d)[-._ ]?(\d\d)[-._ ]?(\d\d)[-. _]?(\d\d)
Remplacer par $1 $2 $3 $4 $5 en appliquant l'attribut Sans retour automatique.


Pour les numéros de téléphone en personnalisant le fichier FindChangeList.txt (mais ça fonctionne aussi avec le Rechercher-remplacer GREP) :

Rechercher \(?(\d\d)\)?[-._ ]?(\d\d)[-._ ]?(\d\d)[-._ ]?(\d\d)[-. _]?(\d\d)
Remplacer par $1~<$2~<$3~<$4~<$5

~< représente l'espace fine (et insécable).

Et comme cette requête est bien faite, par la même occasion elle supprime aussi les points ou les traits d'unions.
 :Smiley03:



• Pour les horaires c'est à peine plus compliqué mais avant d'aller plus loin il faudrait connaître toutes leurs formes possibles.
As-tu un texte d'exemple ?

 :Smiley15:

IP archivée


AlainGB  15 août 2020 : 10:44

Bonjour
Je ne sais pas si c'est une bonne idée, mais je déterre le sujet.j'ai écris à la ligne 65 : grep {findWhat:"\(?(\d\d)\)?[-._ ]?(\d\d)[-._ ]?(\d\d)[-._ ]?(\d\d)[-. _]?(\d\d)"} {changeTo:"$1~<$2~<$3~<$4~<$5"} {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:false, wholeWord:false}    Remplace espaces les points n de telephone.

cela ne fonctionne pas chez moi…Merci de l'aide éventuelle.Alain

IP archivée


AlainGB  15 août 2020 : 23:15

Bonsoir,
Ça à l'air de fonctionner avec ce qui suit :
grep    {findWhat:"\\(?(\\d{2})[.| |-]?(\\d{2})[.| |-]?(\\d{2})[.| |-]?(\\d{2})[.| |-]?(\\d{2})"}
{changeTo:"$1~S$2~S$3~S$4~S$5"}    {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:false, wholeWord:false}

Formate les numéros de téléphone.
En remplacement les espaces ont été remplacées par des espaces insécables.
Comme c'est la première fois que je me penche dessus, il y a peut-être mon manque d'expérience qui va me jouer des tours dans le futur…

IP archivée