婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 用golang如何替換某個文件中的字符串

用golang如何替換某個文件中的字符串

熱門標簽:阿克蘇地圖標注 涿州代理外呼系統 評價高的400電話辦理 外呼系統顯本地手機號 電話機器人軟件免費 百度地圖標注后傳給手機 外呼系統用什么卡 壽光微信地圖標注 excel地圖標注分布數據

用golang實現了某個文件中字符的替換,替換為按行替換,執行后會生成新文件,如a.txt,執行后生成a.txt.mdf。新文件即修改后的內容。

主要用來練習文件的讀取與寫入

package main 
import (
	"bufio"
	"fmt"
	"io"
	"os"
	"strings"
)
 
func main() {
	if len(os.Args) != 4 {
		fmt.Println("lack of config file, eg: go run main.go ${path_of_file} ${old_string} ${new_string}")
		os.Exit(-1)
	}
	fileName := os.Args[1]
	in, err := os.Open(fileName)
	if err != nil {
		fmt.Println("open file fail:", err)
		os.Exit(-1)
	}
	defer in.Close()
 
	out, err := os.OpenFile(fileName+".mdf", os.O_RDWR|os.O_CREATE, 0766)
	if err != nil {
		fmt.Println("Open write file fail:", err)
		os.Exit(-1)
	}
	defer out.Close()
 
	br := bufio.NewReader(in)
	index := 1
	for {
		line, _, err := br.ReadLine()
		if err == io.EOF {
			break
		}
		if err != nil {
			fmt.Println("read err:", err)
			os.Exit(-1)
		}
		newLine := strings.Replace(string(line), os.Args[2], os.Args[3], -1)
		_, err = out.WriteString(newLine + "\n")
		if err != nil {
			fmt.Println("write to file fail:", err)
			os.Exit(-1)
		}
		fmt.Println("done ", index)
		index++
	}
	fmt.Println("FINISH!")
}

執行結果:

源文件:

將空格替換為逗號:

新文件:

補充:golang關于字符串替換的建議

運行下面一段代碼

package main
import (
 "fmt"
 "regexp"
)
func main() {
 tmp := "/Users/max/Downloads/test/website\\nbackup\n"
 buf := []byte(tmp)
 a := "/Users/max/Downloads/test/website\\nbackup"
 r := regexp.MustCompile(a + "\n")
 taskText := r.ReplaceAllString(string(buf[:]), "")
 fmt.Println(r.String() == string(buf[:]))
 fmt.Printf("%q\n", r.String())
 fmt.Printf("%q\n", string(buf[:]))
 fmt.Printf("%q\n", taskText)
}

結果輸出:

true

"/Users/max/Downloads/test/website\\nbackup\n"

"/Users/max/Downloads/test/website\\nbackup\n"

"/Users/max/Downloads/test/website\\nbackup\n"

可以發現,字符串并沒有被替換

然后,我們更改一句代碼

package main
import (
 "fmt"
 "regexp"
 "strings"
)
func main() {
 tmp := "/Users/max/Downloads/test/website\\nbackup\n"
 buf := []byte(tmp)
 a := "/Users/max/Downloads/test/website\\nbackup"
 r := regexp.MustCompile(a + "\n")
 // taskText := r.ReplaceAllString(string(buf[:]), "")
 taskText := strings.ReplaceAll(string(buf[:]), r.String(), "")
 fmt.Println(r.String() == string(buf[:]))
 fmt.Printf("%q\n", r.String())
 fmt.Printf("%q\n", string(buf[:]))
 fmt.Printf("%q\n", taskText)
}

結果輸出:

true

"/Users/max/Downloads/test/website\\nbackup\n"

"/Users/max/Downloads/test/website\\nbackup\n"

""

可以發現,字符串可以被替換

所以,建議在使用字符串替換時,避免使用正則表達式的ReplaceAllString方法,而應該選擇更為穩妥的strings包中的ReplaceAll方法。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 基于golang中container/list包的用法說明
  • Golang中List的實現方法示例詳解
  • golang使用grpc+go-kit模擬oauth認證的操作
  • golang中for range的取地址操作陷阱介紹
  • golang如何去除多余空白字符(含制表符)
  • golang正則之命名分組方式
  • 解決golang中container/list包中的坑

標簽:吐魯番 蘭州 梅河口 欽州 汕頭 銅川 重慶 雞西

巨人網絡通訊聲明:本文標題《用golang如何替換某個文件中的字符串》,本文關鍵詞  用,golang,如何,替換,某個,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《用golang如何替換某個文件中的字符串》相關的同類信息!
  • 本頁收集關于用golang如何替換某個文件中的字符串的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    九九九久久久精品| 一区二区三区在线高清| 久久99精品久久久久久| 亚洲精品一区二区三区福利| 国产精品一线二线三线| 亚洲国产精品高清| 色婷婷亚洲婷婷| 天天色天天爱天天射综合| 91精品国产综合久久精品麻豆| 欧美aaaaa成人免费观看视频| 精品国产污污免费网站入口 | 欧美日韩国产首页| 久久精品国产免费| 中文字幕av一区二区三区| 欧美在线综合视频| 老汉av免费一区二区三区| 欧美激情综合五月色丁香小说| gogogo免费视频观看亚洲一| 亚洲午夜羞羞片| 久久综合色鬼综合色| 91麻豆免费看片| 日韩专区在线视频| 国产精品日产欧美久久久久| 欧美亚州韩日在线看免费版国语版| 无码av免费一区二区三区试看| 精品三级av在线| 在线欧美日韩精品| 国产在线精品国自产拍免费| 亚洲精品伦理在线| 日韩欧美精品三级| 在线看国产一区二区| 精品一二三四在线| 亚洲高清视频中文字幕| 国产日韩综合av| 7777女厕盗摄久久久| av在线这里只有精品| 日韩成人av影视| 国产精品国产自产拍在线| 91精品国产综合久久精品图片| av网站一区二区三区| 蜜桃视频在线观看一区| 伊人夜夜躁av伊人久久| 国产日韩欧美制服另类| 欧美电影影音先锋| 91麻豆.com| 国产成人在线视频播放| 乱一区二区av| 亚洲午夜精品一区二区三区他趣| 国产精品欧美久久久久一区二区| 日韩欧美你懂的| 欧美巨大另类极品videosbest| 99久精品国产| 国产91精品在线观看| 久久精品国产亚洲aⅴ| 亚洲成a人在线观看| 日韩美女久久久| 日本一区二区综合亚洲| 精品免费日韩av| 欧美一二三四区在线| 555www色欧美视频| 日本电影欧美片| 99re这里只有精品首页| 国产xxx精品视频大全| 久久精品国产99| 日韩av在线播放中文字幕| 一区二区三区四区在线播放| 亚洲天堂2016| 中文字幕欧美国产| 久久精品在这里| 久久一区二区三区四区| 欧美成人一区二区三区在线观看| 欧美精品亚洲二区| 欧美日韩情趣电影| 欧美日韩情趣电影| 欧美猛男超大videosgay| 精品视频1区2区3区| 欧美三级日韩在线| 欧美美女直播网站| 欧美日韩免费在线视频| 欧美精品乱码久久久久久按摩 | 首页国产欧美日韩丝袜| 亚洲成人av一区| 天堂va蜜桃一区二区三区 | 亚洲精品中文在线观看| 亚洲欧美日韩在线播放| 一区二区久久久久久| 亚洲国产日日夜夜| 日本va欧美va精品发布| 卡一卡二国产精品 | 另类欧美日韩国产在线| 狠狠久久亚洲欧美| 国产aⅴ精品一区二区三区色成熟| 国产91对白在线观看九色| 不卡av在线免费观看| 日本乱人伦aⅴ精品| 欧美精品aⅴ在线视频| 久久综合久久鬼色中文字| 国产精品麻豆网站| 亚洲福利视频一区| 精品一区二区在线观看| 99天天综合性| 欧美视频一区二区三区在线观看| 欧美一区二区三区人| 久久这里只有精品视频网| 中文天堂在线一区| 一区二区三区成人在线视频| 蜜桃一区二区三区在线观看| 丰满少妇久久久久久久| 欧美在线综合视频| 欧美tickling挠脚心丨vk| 成人免费在线视频观看| 亚洲成人资源网| 福利一区二区在线| 欧美日本国产一区| 久久免费看少妇高潮| 亚洲国产一区视频| 国产精选一区二区三区| 欧美日韩五月天| 欧美精彩视频一区二区三区| 天堂蜜桃91精品| 成人高清在线视频| 欧美乱妇20p| 综合亚洲深深色噜噜狠狠网站| 日韩国产高清在线| 972aa.com艺术欧美| 日韩欧美一区二区免费| 亚洲日本在线天堂| 九九九精品视频| 欧美亚洲动漫精品| 国产精品美女久久久久久| 久久国产夜色精品鲁鲁99| 91精品91久久久中77777| 国产亚洲欧美在线| 免费观看成人av| 在线观看av一区二区| 国产精品欧美一级免费| 久久国产尿小便嘘嘘尿| 91福利国产成人精品照片| 久久久www成人免费无遮挡大片| 日韩精品免费专区| 97精品电影院| 日本一区二区三区国色天香 | 色av综合在线| 国产日韩亚洲欧美综合| 精品一区二区三区的国产在线播放 | 老色鬼精品视频在线观看播放| 在线观看不卡一区| 亚洲青青青在线视频| 不卡欧美aaaaa| 中文一区在线播放| 国产精品1区2区3区| 日韩精品中文字幕在线一区| 亚洲小说春色综合另类电影| 色综合亚洲欧洲| 亚洲女人****多毛耸耸8| 不卡区在线中文字幕| 国产丝袜在线精品| 国产福利一区二区三区在线视频| 精品成人私密视频| 久久精品国产成人一区二区三区 | 国产成人av一区| 国产农村妇女毛片精品久久麻豆 | 国产精品青草久久| 国产宾馆实践打屁股91| 中文字幕巨乱亚洲| 99免费精品在线观看| 亚洲精品乱码久久久久久日本蜜臀| 91美女视频网站| 亚洲在线观看免费视频| 欧美人成免费网站| 久色婷婷小香蕉久久| 久久久久久夜精品精品免费| 国产999精品久久久久久| 国产精品三级电影| 91在线观看下载| 亚洲成人午夜电影| 欧美刺激午夜性久久久久久久| 国产乱码精品一品二品| 国产精品欧美久久久久无广告| 91丨九色丨尤物| 亚洲福利视频一区二区| 日韩欧美国产1| 成人18精品视频| 亚洲成人精品一区二区| 日韩欧美精品在线视频| 粉嫩av一区二区三区粉嫩| 亚洲天堂精品在线观看| 欧美日韩在线播放三区四区| 久久国产日韩欧美精品| 中文字幕精品一区二区三区精品 | 91丝袜美腿高跟国产极品老师| 亚洲第一成年网| 久久伊99综合婷婷久久伊| 色哟哟国产精品| 麻豆91免费观看| 国产精品理论在线观看| 欧美精品在线一区二区三区| 国产成人高清在线| 天天操天天综合网| 国产欧美日韩激情|