0
votes

Regex ajouter certains caractères dans une certaine position

J'ai un fichier TXT qui ressemble à ceci:

abandon(icl>leave>do,agt>person,obj>person);abandon;CAT(CATV),AUX(AVOIR),VAL1(GN) ;


0 commentaires

4 Réponses :


1
votes

Vous pouvez essayer la recherche et remplacer ci-après, dans le mode Regex: xxx

L'idée ici est de simplement subdiviser chaque ligne en morceaux, nous devons enfiler le remplacement. Dans ce cas, le premier groupe de capture est le mot que nous prévoyons d'insérer après le premier point-virgule, avant chat .

Démo

vient de remarquer que vous utilisez Python. Nous pouvons essayer: xxx

Ceci imprime: xxx


2 commentaires

Est-ce avec Python?


@Gdjs Désolé, j'ai raté votre étiquette Python. J'ai ajouté un bref script qui semble fonctionner.



0
votes

Dans Python, vous pouvez le faire comme suit:

my_file = 'my_text_file.txt'

with open(my_file, 'r') as f:
    my_file_as_list = f.readlines()


2 commentaires

Je ne peux pas importer mon texte comme une chaîne unique. C'est un énorme fichier TXT (pour les questions que j'ai uniquement extraites les trois premières lignes).


@Gdjs C'est un problème différent et vous pouvez rechercher comment lire un fichier dans une liste des chaînes. De manière générale, il est assez simple, je mettrai à jour ma réponse pour le cas général.



0
votes

correspondant à différents groupes et le tricot peut être plus rapide que le remplacement de Regex. Devrait tester

abadan(iof>city>thing);abadan;CAT(CATN),N(NP) ;
abandon(icl>leave>do,agt>person,obj>person);abandon;CAT(CATV),AUX(AVOIR),VAL1(GN) ;


0 commentaires

0
votes

Ce script lit le fichier d'entrée, remplace et écrit au fichier de sortie: xxx


xxx

0 commentaires