170 похожих чатов

Всем привет тут могут подсказать с тем что с проверкой

на строке a := "Тест точки" Код срабатывает адекватно и проверка на точку проходит.
А вот когда я считываю строку , он мне даже тип не возвращает?
func main() {
text, _ := bufio.NewReader(os.Stdin).ReadString('\n')
fmt.Println(reflect.TypeOf(text))
var b = (len(text) - 1)
fmt.Println(string(text[b]))
if strings.Contains(string(text[b]), ".") == true {
fmt.Println("Ага кончается точкой")
} else {
fmt.Println("Не оканчивается точкой")
}
}
тут я ввожу текст и он отдает так
Тест точки.
string


Не оканчивается точкой
Как видно тип он не вернул и fmt.Println(string(text[b])) тоже не вернул

22 ответов

9 просмотров
Vladimir- Автор вопроса

суть мне нужно проверить оканчивается ли строка точкой и все Ух ну и строки в Golang

ошибку проверил у ньюридера?

Vladimir- Автор вопроса
Rostislav Teryaev
ошибку проверил у ньюридера?

хм не понимаю, мне строку как то по другому считывать нужно? Ошибки не должно быть я же явно ввожу текст

раз тип не “возвращает” - значит, все еще читает строку почему - это уж вы сами выясняйте

Vladimir- Автор вопроса
Daniel Podolsky
раз тип не “возвращает” - значит, все еще читает с...

но как он мог продолжить выполнять другую часть кода если не доделал первую часть на считывание

Vladimir- Автор вопроса
Rostislav Teryaev
err проверь

text, err := bufio.NewReader(os.Stdin).ReadString('\n') if err != nil { fmt.Println("Проверьте типы входных параметров") } else { fmt.Println("Ошибки не вижу") //Выведем результат, если ошибок нет } Сделал проверку Ввод "Тест точки." Ответ такой Ошибки не вижу

вроде тут все верно вывел, если верно написали результат

Vladimir- Автор вопроса
Alexandr
вроде тут все верно вывел, если верно написали рез...

да но я беру код пишу на проверку строки вот так func main() { var a string a = "asda.sd." fmt.Println(a) var b = (len(a) - 1) fmt.Println(strings.Contains(string(a[b]), ".")) } Возвращает true Но если делаю это через считывание строки полностью То ошибка если так считывать , и строки пустые возвращаются - короче целая наука считать строку с переносами строк из консоли text, err := bufio.NewReader(os.Stdin).ReadString('\n')

Vladimir
text, err := bufio.NewReader(os.Stdin).ReadString(...

func main() { r := bufio.NewReader(os.Stdin) text, err := r.ReadString('\n') if err != nil { log.Fatal(err) } fmt.Println(text) if strings.Contains(text, ".") { fmt.Println("Ага кончается точкой") } else { fmt.Println("Не оканчивается точкой") } }

Vladimir- Автор вопроса
Rostislav Teryaev
func main() { r := bufio.NewReader(os.Stdin) ...

Тээээк код сработал адекватно щас буду смотреть разницу

Vladimir- Автор вопроса

а я не могу знать мне ведь не возвращает тип данных Через fmt.Println(reflect.TypeOf(var_str))

Vladimir
а я не могу знать мне ведь не возвращает тип данны...

этот тип я вам и так скажу - string вопрос в том, что в этой строке, после того как ReadString отработал

Vladimir- Автор вопроса
Daniel Podolsky
этот тип я вам и так скажу - string вопрос в том,...

ой выдает нули и оканчивается этим когда println 0 0 0] 0x1400000e010 0 0 <nil> -1 -1} Короче пока пропущу раздел со строками ну его, странная штука

Vladimir- Автор вопроса
Vladimir- Автор вопроса
Vladimir
ой выдает нули и оканчивается этим когда println...

Всего лишь неизменяемый массив байтов

Vladimir- Автор вопроса
Emin Zalaev
Всего лишь неизменяемый массив байтов

Да это я хорошо усвоил Я запарился со считыванием

Похожие вопросы

Обсуждают сегодня

@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Кто-нибудь знает почему SPM клонирует репо целиком? Некоторые репы просто огромные, как та же swift-syntax которая нужна для использования макросов. Сначала подумал, что это...
iMike
6
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Привет. Я верно понимаю, что в определении класса Монад m — зафиксирован (к тому же поскольку это моноид в категории эндофункторов). Т.е. используя байнд я не могу перемещать...
Arseny
5
еще вопрос, допустим мы создадим char массив из 10 элементов и присвоим ему через сканф 10 символов. и выведем все символы. Хотел спросить последний элемент /0 будет включать...
Anthem
11
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
Карта сайта