je les suivantes (travail) bit de code:F # tuyau fourche
let a =
File.ReadAllLines("C:\ColorTable.dat")
|> Array.filter (fun i -> i.StartsWith(" "))
|> Array.iter (fun i ->
Console.WriteLine(@"ColorList.Add({0}, ""{1}"");", extract_num i, extract_col i)
f.WriteLine(@"ColorList.Add({0}, ""{1}"");", extract_num i, extract_col i)
)
Les fonctions extract_num et extract_col appliquent une expression régulière à la ligne du fichier et extraire une partie de celui-ci. Ensuite, j'imprime une chaîne formatée à la console et dans un fichier.
Pour cela, j'écris deux fois la partie formatée. Qu'est-ce qu'une façon plus propre de faire cela? Je pourrais définir une fonction pour accepter extract_num et extract_col qui renvoient la chaîne formatée et l'appellent deux fois, bien sûr, mais, pour le plaisir d'apprendre, quelle est la manière fonctionnelle de faire cela? En dehors de mon esprit, est-ce que je peux envoyer la chaîne formatée à la fois à la console et au fichier avec une sorte de forking?
Merci