當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Index.IteratorDocsByKeyword方法代碼示例

本文整理匯總了Golang中structs.Index.IteratorDocsByKeyword方法的典型用法代碼示例。如果您正苦於以下問題:Golang Index.IteratorDocsByKeyword方法的具體用法?Golang Index.IteratorDocsByKeyword怎麽用?Golang Index.IteratorDocsByKeyword使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在structs.Index的用法示例。


在下文中一共展示了Index.IteratorDocsByKeyword方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: queryIndex

func queryIndex(index *structs.Index, rexpstr string) {
	r, err := regexp.Compile(rexpstr)
	if err != nil {
		fmt.Printf("%v\n", err.Error())
		return
	}
	matchedDocsCount, matchedKeywordsCount := 0, 0
	fmt.Println("Docs matched by regexp:")
	for doc := range index.IteratorDocs() {
		docStr := doc.(string)
		if r.MatchString(docStr) {
			matchedDocsCount++
			fmt.Println(docStr)
		}
	}
	fmt.Printf("%v total.\n", matchedDocsCount)
	fmt.Println("Keywords matched by regexp:")
	for keyword := range index.IteratorKeywords() {
		keywordStr := keyword.(string)
		if r.MatchString(keywordStr) {
			fmt.Println(keyword)
			matchedKeywordsCount++
			inDocs := make([]string, 0)
			for doc := range index.IteratorDocsByKeyword(keywordStr) {
				inDocs = append(inDocs, doc.(string))
			}
			fmt.Printf("\tFound in the next %v documents:\n", len(inDocs))
			for _, doc := range inDocs {
				fmt.Printf("\t%v\n", doc)
			}
		}
	}
	fmt.Printf("%v total.\n", matchedKeywordsCount)
}
開發者ID:just-another-one-timmy,項目名稱:injackted,代碼行數:34,代碼來源:sampleclient.go

示例2: listDocs

func listDocs(index *structs.Index, keyword string) {
	fmt.Printf("Documents which contain keyword %q:\n", keyword)
	count := 0
	for doc := range index.IteratorDocsByKeyword(keyword) {
		count++
		fmt.Printf("\t%v\n", doc)
	}
	fmt.Printf("%v in total\n", count)
}
開發者ID:just-another-one-timmy,項目名稱:injackted,代碼行數:9,代碼來源:sampleclient.go


注:本文中的structs.Index.IteratorDocsByKeyword方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。