
Никита
13.07.2018
17:54:54

Александр
13.07.2018
17:55:03
паниками баловались?

Никита
13.07.2018
17:56:59
В плане?

Александр
13.07.2018
17:58:53
хотя проехали

Google

Aleksandr
13.07.2018
17:59:39
поиграйся. расскажешь потом в чем дело

The
13.07.2018
18:01:55
можно так продемонстрировать
https://play.golang.org/p/0Tkkn9yYdSw
если я правильно понял о чем вы тут говорите

Александр
13.07.2018
18:02:53
мне его ситуация с нулями напомнило
https://play.golang.org/p/pvRwekBJOjU
но врятли он настолько промазал O_o

Aleksandr
13.07.2018
18:03:22

Александр
13.07.2018
18:04:05
ну вот странно да

The
13.07.2018
18:04:13
это объясняется тем, что []rune != []byte

Александр
13.07.2018
18:04:19

Aleksandr
13.07.2018
18:05:07

Google

GoodMoodDealler
13.07.2018
18:05:18
У меня есть два слайса нужно найти одинаковые элементы по значению, как проще всего это сделать?

Aleksandr
13.07.2018
18:05:57

GoodMoodDealler
13.07.2018
18:06:19

Aleksandr
13.07.2018
18:06:51
s := []str{} передалть в map[string]bool

GoodMoodDealler
13.07.2018
18:06:54
Я думаю может через бд проще?

Aleksandr
13.07.2018
18:07:11

GoodMoodDealler
13.07.2018
18:07:41

Aleksandr
13.07.2018
18:07:59
и я не понял. причем тут бд?

GoodMoodDealler
13.07.2018
18:08:46
Ну тип в бд записать и Джоин сделать

Александр
13.07.2018
18:10:01
вообще я не понял
https://play.golang.org/p/fOGM9fkIqV4
вот минималный пример зелени

GoodMoodDealler
13.07.2018
18:11:37
Я просто сейчас очевидную задачу пытаюсь решить какими-то окольными путями
На это же должен быть простой алгоритм

Aleksandr
13.07.2018
18:15:31
Не, до такой степени я не альтруист

Александр
13.07.2018
18:16:22
в чем блин разница между:
str := "Скоро в школу!"
r:= []rune(str)
и
rr:= []rune("Скоро в школу!")
ума не приложу
ага!

Google

Александр
13.07.2018
18:17:51
первый вариант какого то хрена имет cap - 32
сдурело что ли

The
13.07.2018
18:18:24
https://play.golang.org/p/yMHXaxiu5pR

Александр
13.07.2018
18:18:41
https://play.golang.org/p/IobLKJM_Nlw

Aleksandr
13.07.2018
18:18:47
Ну сколько там байт для кириллицы, кап всегда выше

Александр
13.07.2018
18:19:08
строка то одинаковая
какого хрена он кап больше выделяет

The
13.07.2018
18:19:14
тут проблема не в капе
почему вообще внутри string() можно обращаться за пределы len
если у нас cap = 100, а len = 1, мы ж не можем до 50 элемента обратиться

Александр
13.07.2018
18:20:52
можем
https://play.golang.org/p/6J35QDPm4te

The
13.07.2018
18:21:11
да, гоню

Александр
13.07.2018
18:23:38
Длина – это размер среза. Вместимость – это размер лежащего в его основе массива
так вот slice bounds out of range мы получеем когда отгребаем за пределы массива
но такое сделать не даст
testSlice := make([]rune, 0, 50)
testSlice[5] = 'a'
fmt.Println(testSlice)
срез то 0 длинны
но через append или через магию [] - легко

Никита
13.07.2018
18:29:55

Google

Александр
13.07.2018
18:29:56
хотя append нам и cap расширит без вопросов
-- не так прочитал --
работаешь со строкой как с byte
надо в rune конвертить
попробуй корректно обрезать строку - "维基百科:关于中文维基百科"

Никита
13.07.2018
18:33:55
Сложно конечно со строками в Го

Admin
ERROR: S client not available

Никита
13.07.2018
18:34:02
Прям больно

Александр
13.07.2018
18:34:35
https://play.golang.org/p/JPx3Mt_WMXI
а вот и ху��
?

Aleksandr
13.07.2018
18:35:17

Александр
13.07.2018
18:36:02

The
13.07.2018
18:36:24
лол, картинка уматовая

Aleksandr
13.07.2018
18:36:56
https://play.golang.org/p/Ki2yITiFbhh

Александр
13.07.2018
18:39:47
вообще странный алгоритм

Aleksandr
13.07.2018
18:40:00
нормальный

Александр
13.07.2018
18:40:32
и шито?

Google

Aleksandr
13.07.2018
18:40:54
будет 2*n байт вместо 1*n

Александр
13.07.2018
18:42:16
кстати опять промазал ?

Aleksandr
13.07.2018
18:42:35
давай, допилим

Александр
13.07.2018
18:42:41
offset - 1
length - 2
по идеи там 1 символ должен быть
если length с начало строки

Aleksandr
13.07.2018
18:43:12
не понял

Александр
13.07.2018
18:45:59
если у нас строка - привет, и мы берем длинну - 2 то получаем пр
а потом еще на 1 символ отступаем - р выходит

Aleksandr
13.07.2018
18:46:27
ты про минус или что?

Александр
13.07.2018
18:47:32
нет не про минус
сначало отмеряем 2 символа с начало строки
это будет наша строка...
а потом еще один символ в начале

Aleksandr
13.07.2018
18:47:55
ты в пхп substr не юзал?)

Александр
13.07.2018
18:47:58
это будет с оффсетом

Aleksandr
13.07.2018
18:48:15
сначала сдвиг, потом длина от начала сдвига

Александр
13.07.2018
18:48:19
юзал юзал

Aleksandr
13.07.2018
18:48:57
1, 2 это [n:n+2) где n = 1

Никита
13.07.2018
18:51:20
Написал свою реализацию,вроде работает ?
func Substring(line string, offset, length int) string {
str := []rune(line)
strlen := len(str)
strend := offset + length
if strend > strlen {
return string(str[offset:strlen])
} else {
return string(str[offset:strend])
}
}