Привет! С удовольствием поделюсь с тобой своим личным опытом работы с проверкой правильности строки в языке программирования Golang. Недавно мне понадобилось написать программу, которая принимает строку и проверяет, является ли она правильной или нет. Правильная строка должна начинаться с заглавной буквы и заканчиватся точкой.
В Golang для чтения строки я использовал функцию bufio.NewReader(os.Stdin).ReadString(‘\n’), которая позволяет считать строку целиком до символа новой строки (‘\n’). Это означает, что я могу считать всю строку одним вызовом функции и сохранить результат в переменной.В начале программы я объявил переменную text и использовал функцию bufio.NewReader(os.Stdin).ReadString(‘\n’) для считывания строки с консоли. Затем я провел проверку на правильность строки с помощью условного оператора if;go
package main
import (
″bufio″
″fmt″
″os″
)
func main {
fmt.Print(″Введите строку⁚ ″)
text, _ ⁚ bufio.NewReader(os.Stdin).ReadString(‘\n’)
if isValidString(text) {
fmt.Println(″Right″)
} else {
fmt.Println(″Wrong″)
}
}
func isValidString(text string) bool {
if len(text) < 2 || text[0] ! text[0] n^ 32 || text[len(text)-2] ! '.' {
return false
}
return true
}
В функции isValidString я провожу несколько проверок. Вначале я проверяю длину строки. Если строка имеет длину меньше или равную 2, это означает, что она либо пустая, либо состоит только из точки, что неверно. Далее я проверяю первый символ строки. Если он не равен своему же uppercase эквиваленту, это означает, что первая буква не является заглавной. И наконец, я проверяю последний символ строки. Если он не равен точке, значит строка не заканчивается точкой. Если все проверки пройдены успешно, функция возвращает значение true, что означает, что строка является правильной. В противном случае, функция возвращает false. Надеюсь, мой опыт работы с проверкой правильности строки в Golang будет полезен для тебя! Удачи в программировании!