# Le club des professionnels en informatique > La taverne du Club : Humour et divers > Humour Informatique >  quelle logiciel / diteur permet de faire ou dtecter de la refactorisation simple (rptition de lignes) ?

## borlandcpp2018

bonjour,

ce n'est pas de l'humour mais de l'vidence.
L je corrige un long script crit par autrui,  dedans il y a une multitude de lignes de code qui sont rptes et qui ont un sens.

par exemple :
position y+= 1 ;

Cela correspond  un saut de ligne.

du coup, je me dis , je devrais en faire une fonction, et pour cela, dtecter que cette ligne se rpte  de multiple endroit.
j'ai vu que dans Notepad ++, on povait rechercher le Nb de fois qu'une ligne est rpt.
Mais je n'ai trouv aucun diteur de texte qui comptabilise chaque ligne (afin de savoir quelles instructions d'une seule ligne sont tout le temps rptes et devraient tre factorise).

avez-vous une ide  d'un diteur de texte qui ferait a ?

par exemple, qui indiquerait :

a=a+1 :  45 occurrences 
position y+= 1 ;   36 occurrences
//todo  : 12 occurrences


merci de votre aide  tous.

----------


## Pyramidev

Bonjour,

S'il suffit de compter le nombre d'occurrences de chaque ligne, alors cela peut se coder facilement en Python.

Voici le code correspondant :


```

```

Si le fichier 'test.txt' contient le mme texte que mon script Python, alors le rsultat sera :


```

```

Un avantage du Python est qu'on peut trs facilement faire des choses simples avec, mme quand on ne connat quasiment pas ce langage. En effet, quand on cherche sur internet comment faire telles et telles oprations basiques, on tombe trs vite sur des liens StackOverflow qui expliquent comment faire.

Nanmoins, pour tre un peu plus  l'aise avec Python, je conseille de lire le tutoriel du site officiel.

 part a, voici une autre version du script plus difficile  lire quand on dbute, mais avec du code plus dcoup, plus rutilisable et avec du typage fort vrifi avec mypy :


```

```

Attention, dans les deux scripts que j'ai crits, deux lignes qui ne diffrent que d'un seul caractre - mme blanc - seront considres comme diffrentes. Donc tu devras probablement adapter le code  tes besoins.

Edit 2018-04-27-20h13 : tourderies corriges
Edit 2018-04-27-20h51 : ajout de la gestion des erreurs avec try-except.

----------


## EuropeanKeyboard

Utiliser python pour faire a c'est un comme comme tuer une mouche avec un bazooka mais bon, et a se dit forum des professionnels de l'informatique  ::roll::

----------


## rudolfrudolf

Bonjour,

Connait tu Ultra Edit ?



Si c'est une fonction de comptage que tu veux il l'a

----------

