Remplacez chaque onglet par un espace. Utilisez la commande sed, la commande tr ou la commande expand pour confirmation.
Go
package main
import (
"bufio"
"fmt"
"os"
"strings"
)
func main() {
//Spécifiez le fichier lu
name := "../hightemp.txt"
//Ouvrez le fichier à lire
f, err := os.Open(name)
if err != nil {
fmt.Printf("os.Open: %#v\n",err)
return
}
defer f.Close() //Pli à la fin
//Créer une bibliothèque de scanners
scanner := bufio.NewScanner(f)
//Lire une ligne de données
for scanner.Scan() {
//Remplacer TAB par un blanc
fmt.Println(strings.Replace(scanner.Text(),"\t"," ",-1))
}
//Vérifiez s'il y a eu une erreur
if err = scanner.Err(); err != nil {
fmt.Printf("scanner.Err: %#v\n",err)
return
}
}
python
#Fichier ouvert
with open("../hightemp.txt", "r") as f:
#Lire ligne par ligne
for data in f:
#Remplacez TAB par un blanc (la bande supprime l'espace blanc)
print(data.strip().replace("\t"," "))
Javascript
//Module de charge
var fs = require("fs");
var readline = require("readline");
//Créer un flux
var stream = fs.createReadStream("../hightemp.txt", "utf8");
//Passer le flux à readline
var reader = readline.createInterface({ input: stream });
//Rappel de lecture de ligne
reader.on("line", (data) => {
//Convertir TAB en blanc (chaîne de caractères"\t"Spécifiez avec une expression régulière car cela ne fonctionne pas bien avec la spécification)
console.log(data.replace(/\t/g," "))
});
Est-il possible de spécifier "\ t" dans la chaîne de caractères source de remplacement en Javascript? Je suis à nouveau surpris par la petite quantité de code Python.
Recommended Posts