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