touppercase strings golang functions string go character

strings - ¿Cómo obtener los últimos X Caracteres de una Cadena Golang?



substring golang (2)

Si tengo la cadena "12121211122" y quiero obtener los últimos 3 caracteres (por ejemplo, "122"), ¿es posible en Go? He buscado en el paquete de string y no he visto nada parecido a getLastXcharacters .


La respuesta depende de lo que quiere decir con "personajes". Si te refieres a bytes entonces:

s := "12121211122" lastByByte := s[len(s)-3:]

Si quieres decir runas en una cadena codificada en utf-8, entonces:

s := "12121211122" j := len(s) for i := 0; i < 3 && j > 0; i++ { _, size := utf8.DecodeLastRuneInString(s[:j]) j -= size } lastByRune := s[j:]

También puede convertir la cadena en una [] runa y operar en la división de la runa, pero eso asigna memoria.