`
DarkWingBoy
  • 浏览: 50283 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

golang截取字符串 按字符截取

 
阅读更多
http://www.dotcoo.com/golang-substr-char
golang截取字符串,按字符截取
func Substr(str string, start, length int) string {
    rs := []rune(str)
    rl := len(rs)
    end := 0
        
    if start < 0 {
        start = rl - 1 + start
    }
    end = start + length
    
    if start > end {
        start, end = end, start
    }
    
    if start < 0 {
        start = 0
    }
    if start > rl {
        start = rl
    }
    if end < 0 {
        end = 0
    }
    if end > rl {
        end = rl
    }
    
    return string(rs[start:end])
}

 

分享到:
评论

相关推荐

    Golang中文字符串截取函数实现原理

    这个自定义函数通过将字符串视为rune数组来处理中文字符截取问题,从而避免了因直接操作字节而造成的字符编码错误。通过这种方式,即使在中文字符串中进行任意位置和任意长度的截取,也能保证结果字符串的正确性和...

    go语言按显示长度截取字符串的方法

    这里我们探讨的主题是如何按显示长度来截取字符串,这在处理多语言文本时尤其重要,因为不同字符集(如UTF-8)中的字符长度可能不一致。在UTF-8编码下,一个英文字符通常占用1个字节,而一个汉字则可能占用1到3个...

    Go语言截取字符串函数用法

    首先,Go语言没有直接提供一个名为“substr”的内置函数来截取字符串,但可以通过组合标准库中的字符串处理函数来实现这一功能。例如,可以使用“strings”包中的“Cut”、“Fields”等函数,或者使用“fmt”包中的...

    过滤字符串中包含表情字符

    过滤一个字符串中包含有表情的字符,例如一个用户昵称中包含的表情

    go浮点数转字符串保留小数点后N位的完美解决方法

    在Go语言中,将浮点数转换为字符串并保留小数点后特定位数是一个常见的需求,特别是在数据展示、计算或者格式化输出时。本文主要探讨如何在Go中优雅地解决这个问题。 首先,我们可以看到一个名为`FormatFloat`的...

    golang 性能优化

    在Golang中进行字符串处理时,选择合适的构造方式对于提升程序性能至关重要。本节将探讨不同字符串连接方法及其性能表现。 ##### Fmt VS "+" 使用`fmt.Sprintf`或`fmt.Printf`等函数与使用`+`操作符来拼接字符串是...

    Go语言编程中字符串切割方法小结

    1.func Fields(s string) []string,这个函数的作用是按照1:n个空格来分割字符串最后返回的是 []string的切片 代码如下: import (  “fmt”  “strings” ) func main() {  fmt.Println(strings.Fields(“hello...

    go代码-截取指定字符转换

    - 使用`strings`包的`Substring`函数可以截取字符串的一部分。例如:`substr := strings.Substring(str, start, end)`,它会返回从`start`到`end-1`位置的子串。 - ` runes `遍历字符串时,可以获取每个Unicode码...

    golang生成指定位数的随机数的方法

    由于`CreateSecureRandom`用于生成字符串,我们使用`base64.URLEncoding.EncodeToString(buffer)`将字节转换为可打印的字符串,并截取指定长度。 总的来说,Golang提供了丰富的工具来生成随机数,无论是简单的伪...

    nonce-golang:一次性令牌库

    1. **生成令牌**:nonce-golang 库提供了一个方法来生成唯一的、随机的字符串,通常由一系列不可预测的字节组成,确保每个生成的nonce都是独一无二的。 2. **存储与验证**:在生成nonce后,通常需要将其存储起来,...

    utils:golang utils

    1. `string`: 字符串处理函数,如格式化、截取、查找、替换等。 2. `io`: 输入/输出相关的工具,可能包含读写文件、网络流处理等功能。 3. `time`: 时间日期操作,可能提供更友好的API来处理时间。 4. `math`: 数学...

    leetcode数组下标大于间距-LeetCode:力扣GoLang

    leetcode数组下标大于间距 LeetCode Golang 算法题 ...使用一个可截取的字符串,或者队列(FIFO)来遍历一遍原字符串,当有字母重复的时候,开始从头删,一直到删除重复的元素,然后继续遍历,最后O(n)得到max

    手撕Go语言v1.1.pdf

    - **5.3.3 字面量**:表示具体的值,如数字、字符串等。 - **5.3.4 操作符**:用于进行算术运算、比较等操作。 - **5.3.5 分割符**:包括括号、逗号等,用于分隔代码中的不同部分。 **5.4 声明** 声明用于定义变量...

    Shell 入门实战到精通

    正则表达式可以用来匹配字符串中的一部分或整个字符串。 Shell 正则表达式包括基本元字符、特殊符号、量词和分支结构等。 Shell 编程 Shell 编程是指使用 Shell 语⾔编写的程序。 Shell 编程可以用于自动化系统...

    go语言入门指南,the-way-to-go

    在数据类型方面,Go语言支持基本类型如整型、浮点型、布尔型、字符串等,还提供了切片(slice)、映射(map)和指针等复杂类型。切片是一种动态数组,可以方便地进行扩容和截取;映射则提供了键值对的存储,类似于...

    ProjetoUnivesp2021-Backend:https

    5. `config` - 存储配置信息,如数据库连接字符串、服务器端口、密钥等。 6. `util` - 通用工具函数,如日志记录、错误处理、时间格式化等。 在深入学习这个项目时,你需要关注如何使用Go语言的特性来构建高效、...

    go语言中文PDF文档

    Go语言支持多种数据类型,如整型(int)、浮点型(float64)、字符串(string)等。变量声明可以使用`var`关键字,也可以使用更简洁的`:=`操作符。此外,Go语言还有一系列保留字,如`if`、`else`、`for`等。 ```go var a ...

Global site tag (gtag.js) - Google Analytics