[Applescript] Problème Pour Ramasser Des Données Dans Un Fic

Dimitricus

Membre enregistré
30 Novembre 2008
5
0
38
Bonjour,

Je vous explique brièvement ce que je veux et par la suite, je vais vous expliquer mon problème.

J'ai une liste de noms, dont certains contiennent des noms composés, et j'aimerais créer des dossiers avec ces noms. Certains vont me dire de les créer à la main, mais j'en ai pas juste 10.

Mon problème est, pour les noms composés, que je ne suis pas capable de voir le nom comme un seul mot, le script le voit comme deux mots. Par exemple : Il me donne le nom Jean-Michel comme ça, Jean Michel.

Je mets même le script pour vous aidez.


set theFile tochoose file with prompt"Select a text file:"set theFileReference to open for access theFile

set theFileContents to read theFileReference

--returntheFileContents

set LoopEnd to(count paragraphs of theFileContents) + 1

set ListOfEntries to {"Part1", "Part2", "Part3"}

repeat withi from 1 to LoopEnd --+ 1

setCurrentParagraph to get paragraph i of theFileContents --as string

setPart1 to get word 1 ofCurrentParagraph

setPart2 to get word 2 ofCurrentParagraph

setPart3 to get word 3 ofCurrentParagraph

setCurrentList to {Part1, Part2, Part3}

copyCurrentList to the end of ListOfEntries

end repeat

return ListOfEntries

close access theFileReference

Merci !
 
Bonjour,


Les mots en AppleScript sont séparés par certains caractères.

Si tes vrais mots sont séparés par un espace, ce script fonctionnera :
Bloc de code:
set theFile to choose file with prompt "Select a text file:"
set theFileContents to read theFile

set ListOfEntries to my TexteEntreEspace(paragraphs of theFileContents)
set beginning of ListOfEntries to {"Part1", "Part2", "Part3"}
return ListOfEntries

on TexteEntreEspace(T)
	set OldTid to text item delimiters
	set text item delimiters to space -- le séparateur = un espace
	repeat with i in T
		try
			tell i to set contents to text items 1 thru 3 -- les trois premiers éléments séparé par un espace
		end try
	end repeat
	set text item delimiters to OldTid
	return T
end TexteEntreEspace
 
Bonsoir

J'ai mal interprété la demande.

Pour moi c'est de créer les dossiers avec les noms comme ils sont écrit dans le fichier texte.

Le problème avec un fichier TextEdit, il prend très mal en compte les caractères non US (é = √©).

Donc je créer mon propre fichier texte, qui lui accepte tout les codes ASCII.

Pour moi Jean-Paul Auchon et Jean Paul Auchon sont différents.

Il faut chercher le tiret dans la ligne de texte pour voir ci ce ne seras pas un doublon?

@+