发布于 2014-08-20 06:17:01 | 1582 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的GO语言教程,程序狗速度看过来!

Go语言

Go是一种新的语言,一种并发的、带垃圾回收的、快速编译的语言。Go是谷歌2009年发布的第二款编程语言。2009年7月份,谷歌曾发布了Simple语言,它是用来开发Android应用的一种BASIC语言。


本文是一个golang实现的获取某个字符在字符串中的位置函数,类似php的中strpos,感兴趣的同学参考下。

原理其实很简单,首先通过strings库中的Index函数获得子串的字节位置,再通过这个位置获得子串之前的字节数组pre,再将pre转换成[]rune,获得[]rune的长度,便是子串之前字符串的长度,也就是子串在字符串中的字符位置,

具体代码如下:

    func UnicodeIndex(str,substr string) int {  
      // 子串在字符串的字节位置  
      result := strings.Index(str,substr)    
      if result >= 0 {  
        // 获得子串之前的字符串并转换成[]byte  
        prefix := []byte(str)[0:result]    
        // 将子串之前的字符串转换成[]rune  
        rs := []rune(string(prefix))    
        // 获得子串之前的字符串的长度,便是子串在字符串的字符位置  
        result = len(rs)  
      }  
        
      return result  
    } 



最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务