Golang функция split для string

Пользователь

Я начинающий программист на Golang и у меня возникли небольшие трудности с функцией split: как и для чего её использовать? Накидайте примеров кода, где используется данный метод.

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp Pocket
9 июня 2020 г., 13:09

Пользователь

Функция split используется для разбиения строки на массив по словам, разделителем для слов может являться любой символ, который вы укажите в параметрах функции.

9 июня 2020 г., 13:21

Пользователь

Так как переменная стринг является неизменяемым типом данных, то есть, если ты туда вбил какое-то значение, то уже никак не сможешь его изменить, поэтому, чтобы работать с каждым словом отдельно, нужно применить разбиение строки на массив, с помощью функции split.

9 июня 2020 г., 13:35

Пользователь

Спасибо, за пояснение о том, что такое функция split. Теперь я знаю, как его правильно есть). Покажите пример кода, как это должно работать

9 июня 2020 г., 13:38

Пользователь

Ну например:

package main

 

import (

      "fmt"

      "regexp"

)

 

const refString = "Mary*had,a%little_lamb"

 

func main() {

 

      words := regexp.MustCompile("[*,%_]{1}").Split(refString, -1)

      for idx, word := range words {

                fmt.Printf("Word %d is: %s\n", idx, word)

      }

 

}

Здесь у нас есть константа refString, в которой хранится некоторая строка. Создаем переменную words, которая будет являться нашим массивом со словами. Она равна функции regexp.MustCompile("[*,%_]{1}").Split(refString, -1), в первой скобке указываем символы, которые выполняют роль разделителей слов в предложении, во второй скобке указываем переменную string, которую нужно разбить на слова.

9 июня 2020 г., 13:43

Пользователь

gracie: Ну например: package main   import (       "fmt"       "regexp" )   const refString = "Mary*had,a%little_lamb"   func main() {         words := regexp.MustCompile("[*,%_]{1}").Split(refString, -1)       for idx, word := range words {                 fmt.Printf("Word %d is: %s\n", idx, word)       }   }Здесь у нас есть константа refString, в которой хранится некоторая строка. Создаем переменную words, которая будет являться нашим массивом со словами. Она равна функции regexp.MustCompile("[*,%_]{1}").Split(refString, -1), в первой скобке указываем символы, которые выполняют роль разделителей слов в предложении, во второй скобке указываем переменную string, которую нужно разбить на слова.

Спасибо теперь я полностью понял, как это делается. Пойду применять новые знания на практике, чтобы закрепить полученную информацию, так сказать)

9 июня 2020 г., 13:57