[Débutant] Récupérer une partie d'un texte précisement

Vous voulez de l'aide ? Postez ici :)
Post Reply
Balbitor
Posts: 2
Joined: 06 Mar 2017, 11:59

[Débutant] Récupérer une partie d'un texte précisement

Post by Balbitor »

Bonjour, je recherche une manière de séparer un texte brut intelligemment.
En faite je m'explique par exemple j'ai une adresse :

55 Rue du Faubourg Saint-Honoré
75008 Paris

Et mon but est d'avoir :
55 Rue du Faubourg Saint-Honoré dans la variable1
75008 dans la variable2
Paris dans la variable3

En sachant que l'adresse peut bien-sur changer mais en gardant toujours cette organisation.
ligne 1ou2 adresse
dernière ligne code postal et ville
Attachments
Exemple
Exemple
Sans titre.jpg (103.45 KiB) Viewed 1329 times
francois
Posts: 456
Joined: 18 Oct 2010, 10:33
Location: France

Re: [Débutant] Récupérer une partie d'un texte précisement

Post by francois »

Bonjour,

Si on peut se positionner dans la zone texte de l'adresse :
1) selectionner toute cette zone via un "CNTL A"
2) Copier la zone selectionnée via un "CNTL C"
3) récupérer la zone copiée et créer les 4 variables ligne_1, ligne_2 ( éventuellement à blanc) code postal et ville.

Ce qui donne avec Actiona :
1) et 2 : via une action code

Code: Select all

//===============
var clavier= new Keyboard();
var presse_papier=new Clipboard();
//===============

//=========================
//=> Cntl A : selectionner toute la "textarea"
//=========================
Execution.pause(200)
clavier.pressKey("controlLeft");
Execution.pause(200)
clavier.triggerKey("A");
Execution.pause(200)
clavier.releaseKey("controlLeft");
//=========================



//=========================
//=> Cntl C  : copier
//=========================
Execution.pause(200);
clavier.pressKey("controlLeft");
clavier.triggerKey("C");
clavier.releaseKey("controlLeft")
//=========================

//=========================
//=> Recupérer le clipboard
//=========================
Execution.pause(300);
presse_pap =presse_papier.text;
//=========================
3) (créer les variables) également via une action code

Code: Select all

//====================
// récuperer les 2 ou 3 lignes
//====================
fin_ligne =String.fromCharCode(10); // code 10=  retour à la ligne
presse_pap= presse_pap.trim()  // virer les blancs devant ou derriere l'adresse
t_lignes =presse_pap.split(fin_ligne);
nb_lignes = t_lignes.length
//====================

switch (nb_lignes)
{
case 2 :
case 3 :
//  Ok ily a 2 ou 3 lignes, on continue
break;
default :
// cas pas prévu
// on arrete
      Console.printWarning("Cas non prévu  nombre de lignes " + nb_lignes  )
      Console.printWarning(presse_pap)
      Execution.stop();
}
ligne_1 = t_lignes[0];

//===============
if ( nb_lignes ==3)
{
ligne_2 = t_lignes[1];
}
else
{
ligne_2 = ""
}
//==============

//===============
// recherche code postal et ville
//===============

position_espace  =  t_lignes[nb_lignes-1].indexOf(" "); 
zone_code_postal = t_lignes[nb_lignes-1].substr(0,5);
switch (true)
{

case position_espace == 5  :
    code_postal= zone_code_postal ;
    ville  = t_lignes[nb_lignes-1].substr(position_espace+1)
    break;
default :
  code_postal="";
  ville  = t_lignes[nb_lignes-1];
}
//===============
Balbitor
Posts: 2
Joined: 06 Mar 2017, 11:59

Re: [Débutant] Récupérer une partie d'un texte précisement

Post by Balbitor »

Merci beaucoup, c'est exactement ce dont j'avais besoin.
Post Reply