婷婷综合国产,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
    激情综合网天天干| 国产精品萝li| 欧美国产一区二区| 久久精品国产久精国产| 911精品国产一区二区在线| 国产欧美精品一区二区色综合朱莉 | 一本大道av一区二区在线播放| 国产亚洲成年网址在线观看| 国产精品99精品久久免费| 国产无一区二区| 91麻豆产精品久久久久久 | 亚洲同性gay激情无套| 91丝袜高跟美女视频| 一个色综合av| 91精品在线观看入口| 国产**成人网毛片九色 | 久久这里都是精品| 日本午夜一本久久久综合| 奇米精品一区二区三区在线观看一| 这里只有精品99re| 欧美性xxxxxxxx| av电影在线观看不卡| 亚洲精品伦理在线| 欧美日韩国产高清一区| 精品一区二区三区蜜桃| 国产精品国产精品国产专区不蜜| 日本丶国产丶欧美色综合| 久久爱另类一区二区小说| 日本一区二区三区高清不卡 | 欧美午夜一区二区| 极品美女销魂一区二区三区| 亚洲免费在线电影| 久久蜜桃av一区精品变态类天堂| 欧洲另类一二三四区| 国产精品白丝jk黑袜喷水| 亚洲成人一区在线| 国产精品视频一二三| 欧美不卡一二三| 欧美美女一区二区三区| jlzzjlzz欧美大全| 国产一区亚洲一区| 奇米精品一区二区三区在线观看一| 亚洲欧美日韩中文播放 | 不卡av在线免费观看| 视频一区二区三区中文字幕| 中文字幕一区日韩精品欧美| 欧美xfplay| 在线成人免费视频| 欧美影院一区二区| 成人动漫av在线| 国产成人综合在线播放| 激情av综合网| 麻豆91精品视频| 日韩极品在线观看| 亚洲精品乱码久久久久久久久| 久久精品一区四区| 欧美大胆人体bbbb| 日韩一级大片在线| 91精品国产日韩91久久久久久| 欧美日韩一区小说| 欧美少妇一区二区| 欧美色区777第一页| 色悠久久久久综合欧美99| 91久久精品国产91性色tv| 91看片淫黄大片一级在线观看| 99v久久综合狠狠综合久久| 懂色中文一区二区在线播放| 国产麻豆精品theporn| 国产福利视频一区二区三区| 国产91精品免费| 成av人片一区二区| 日本精品视频一区二区| 色国产精品一区在线观看| 欧美午夜不卡在线观看免费| 欧美日韩在线免费视频| 欧美一区二区免费视频| 日韩精品一区二区三区视频播放 | 欧美日韩精品综合在线| 欧美日韩精品欧美日韩精品一综合| 欧美日韩黄视频| 日韩欧美成人一区二区| 国产午夜亚洲精品不卡| 成人欧美一区二区三区1314| 尤物视频一区二区| 视频一区中文字幕| 狠狠色综合日日| 成人a级免费电影| 欧美亚洲一区二区三区四区| 欧美日韩第一区日日骚| 精品日韩99亚洲| 国产精品美女视频| 亚洲一二三四区| 国产在线不卡一区| 色老头久久综合| 日韩欧美一级精品久久| 欧美激情一区二区三区四区| 亚洲在线视频一区| 国模少妇一区二区三区| 色婷婷av一区二区三区之一色屋| 欧美巨大另类极品videosbest| 国产欧美日本一区视频| 午夜精品福利一区二区三区av | 欧美久久一区二区| 久久精品免费在线观看| 亚洲日本护士毛茸茸| 激情综合一区二区三区| 欧美日本在线播放| 国产午夜亚洲精品不卡| 婷婷一区二区三区| 色综合av在线| 欧美国产日本韩| 蜜桃av噜噜一区二区三区小说| 色综合视频在线观看| 亚洲精品一区二区三区蜜桃下载| 亚洲激情图片一区| 成人免费视频视频在线观看免费| 3d动漫精品啪啪一区二区竹菊| 亚洲免费高清视频在线| 国产v日产∨综合v精品视频| 91精品国产综合久久久久久久久久 | 欧美高清你懂得| 国产精品不卡在线| 久久av资源站| 日韩一区二区在线观看| 午夜视频在线观看一区| 欧洲精品一区二区| 亚洲日本一区二区| 91在线观看美女| 亚洲欧洲99久久| 91视视频在线直接观看在线看网页在线看 | 国产精品美女www爽爽爽| 韩国成人精品a∨在线观看| 91精品国产综合久久蜜臀 | 欧美三级在线视频| 亚洲欧美乱综合| 91色porny蝌蚪| 一区二区欧美精品| 欧美性视频一区二区三区| 亚洲精品你懂的| 欧美日韩一卡二卡三卡| 石原莉奈在线亚洲二区| 欧美精品在线一区二区三区| 亚洲成a天堂v人片| 欧美一区二区三区爱爱| 精品一区二区综合| 国产午夜精品久久久久久免费视 | 99精品久久只有精品| 欧美高清在线一区二区| 99久久精品国产导航| 亚洲女爱视频在线| 欧美中文字幕亚洲一区二区va在线 | 欧美日韩精品欧美日韩精品| 午夜欧美在线一二页| 欧美一区二区三区免费在线看| 卡一卡二国产精品| 欧美精品一区二区三区蜜桃视频| 粉嫩13p一区二区三区| 一区二区三区中文字幕精品精品 | 亚洲一区二区黄色| 在线成人免费视频| 国产尤物一区二区| 伊人一区二区三区| 日韩欧美黄色影院| 99精品国产视频| 青青草97国产精品免费观看无弹窗版 | 经典三级一区二区| 中文字幕一区二区在线播放| 欧美无砖专区一中文字| 国产乱一区二区| 亚洲综合免费观看高清完整版 | 亚洲国产日韩a在线播放性色| 日韩欧美一级二级三级久久久 | 国产精品亚洲午夜一区二区三区| 国产精品福利一区| 3d动漫精品啪啪1区2区免费| 成人91在线观看| 久久国产精品99久久人人澡| 亚洲人成电影网站色mp4| 另类综合日韩欧美亚洲| 欧美一区二区啪啪| 久久久久国产一区二区三区四区| 国产精品羞羞答答xxdd| 亚洲女厕所小便bbb| 日韩一区二区中文字幕| 成人福利电影精品一区二区在线观看| 亚洲已满18点击进入久久| 久久亚洲精华国产精华液| 欧美性生活大片视频| 粉嫩蜜臀av国产精品网站| 亚洲国产另类av| 亚洲国产精品激情在线观看| 欧美一区二区免费观在线| 91久久一区二区| 成人国产视频在线观看| 久久99热99| 天堂va蜜桃一区二区三区漫画版| 亚洲美女在线一区| 国产亲近乱来精品视频| 久久婷婷久久一区二区三区| 欧美一级二级在线观看|