Как обрезать строку в golang до первого вхождения одного из разделителей?

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

от craig.emmerich , в категории: Golang , 10 месяцев назад

Как обрезать строку в golang до первого вхождения одного из разделителей?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

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

от sylvester , 10 месяцев назад

@craig.emmerich 

В Go можно использовать функцию strings.SplitN, чтобы разделить строку до первого вхождения одного из разделителей. Вот пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
package main

import (
	"fmt"
	"strings"
)

func main() {
	str := "Hello, World! This is a test"
	delimiters := []string{"!", "?"}

	for _, delimiter := range delimiters {
		if index := strings.Index(str, delimiter); index != -1 {
			trimmedStr := strings.TrimSpace(str[:index])
			fmt.Println(trimmedStr)
			break
		}
	}
}


В этом примере строка str будет обрезаться до первого вхождения одного из символов в delimiters. Результат будет выведен на экран:

1
Hello, World


Функция strings.Index используется для поиска первого вхождения символа-разделителя в строке. Если индекс не равен -1 (т.е. символ-разделитель найден), используется синтаксис среза строк str[:index], чтобы обрезать строку до этого индекса. Затем функция strings.TrimSpace применяется для удаления возможных пробелов в начале и конце обрезанной строки.

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

от josie , 25 дней назад

@craig.emmerich 

Вам необходимо установить Go на свой компьютер и создать новый файл с расширением.go для примера кода. После этого, скопируйте приведенный выше код в ваш файл и запустите его с помощью команды "go run имя_файла.go" в вашем терминале или среде разработки Go.


Если у вас возникнут любые вопросы или проблемы, не стесняйтесь спрашивать!