Replace each tab character with one space character. Use the sed command, tr command, or expand command for confirmation.
Go
package main
import (
"bufio"
"fmt"
"os"
"strings"
)
func main() {
//Specify the read file
name := "../hightemp.txt"
//Open the file to read
f, err := os.Open(name)
if err != nil {
fmt.Printf("os.Open: %#v\n",err)
return
}
defer f.Close() //Crease at the end
//Create a scanner library
scanner := bufio.NewScanner(f)
//Read one line of data
for scanner.Scan() {
//Replace TAB with blank
fmt.Println(strings.Replace(scanner.Text(),"\t"," ",-1))
}
//Check if there was an error
if err = scanner.Err(); err != nil {
fmt.Printf("scanner.Err: %#v\n",err)
return
}
}
python
#Open file
with open("../hightemp.txt", "r") as f:
#Read line by line
for data in f:
#Replace TAB with whitespace (strip removes white space)
print(data.strip().replace("\t"," "))
Javascript
//Module loading
var fs = require("fs");
var readline = require("readline");
//Create a stream
var stream = fs.createReadStream("../hightemp.txt", "utf8");
//Pass Stream to readline
var reader = readline.createInterface({ input: stream });
//Row read callback
reader.on("line", (data) => {
//Convert TAB to whitespace (string"\t"Specify with a regular expression because it does not work well with the specification)
console.log(data.replace(/\t/g," "))
});
Is it possible to specify "\ t" in the replacement source string in Javascript? I am surprised again by the small number of Python code.
Recommended Posts