var fileWork = ioutil.ReadFile("testFile.txt")
for _, link := range arrLinks {
var regul = link + ".txt"
myRegexp, err := regexp.Compile(regul)
// тут string(fileWork) всегда равен var fileWork = ioutil.ReadFile("testFile.txt")
// вы передаёте началные данные каждый раз, из-за этого и не работает как надо
var new_fileWork = myRegexp.ReplaceAllString(string(fileWork), link) // Редактируем.
}
var new_fileWorkB = []byte(new_fileWork)
fileWork := []byte("содержимое вашего файла")
func (b *bot) HandleStart(message *tb.Message) {
// тут вы отправляете сообщние конкретному получателю message.Sender, не первому, не второму, а именно тому, кто инициировал этот вызов.
b.Bot.Send(message.Sender, "Hello")
// тут тоже вы создаёте для message.Sender.ID
storage.GetClient().CreateUserDocument(message.Sender.ID)
}
func (b *bot) HandleStart(message *tb.Message) {
go func() {
b.Bot.Send(message.Sender, "Hello")
storage.GetClient().CreateUserDocument(message.Sender.ID)
}()
}
func (b *bot) HandleStart(message *tb.Message) {
// запускаем "тяжелую" функцию в горутине
go func() {
storage.GetClient().CreateUserDocument(message.Sender.ID)
}()
// отвечаем быстро, чтобы пользователь не ждал
b.Bot.Send(message.Sender, "Hello")
}
Просто в песочнице у вас другая ошибка, вы выводите fileWork, в строке fmt.Println("Новое содержимое файла:\n", fileWork)
А надо выводить new_fileWork.
Вот рабочая песочница https://play.golang.org/p/LH-8ApW_cSe