golang.org網站的全文檢索搜尋是基於suffix array實現的【http://t.cn/hBJekg】,可能覺得效果不錯,就把suffix array添加到golang的標準庫裡面了。【http://t.cn/hBJekd】
package main<br />import "fmt"<br />import "index/suffixarray"<br />func main() {<br />fmt.Println("Hello, 世界")<br />str:= `The Go programming language is an open source project to make programmers more productive. Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.`<br />index := suffixarray.New([]byte(str))<br />offsets1 := index.Lookup([]byte("program"), -1)<br />for _,i := range offsets1{<br />fmt.Println(str[i:])<br />}<br />}<br />