go-ego/gse

可以标记文本中的多音字吗?然后标注唯一读音

guonaihong opened this issue · 1 comments

举个例子

  1. 打开下面的网站
    https://www.qqxiuzi.cn/zh/pinyin/

  2. 在文本中粘贴以下文本

 那是力争上游的一种树,笔直的干,笔直的枝。它的干呢,通常是丈把高,像是加以人工似的,一丈以内,绝无旁枝;它所有的桠枝呢,一律向上,而且紧紧靠拢,也像是加以人工似的,成为一束,绝无横斜逸出;它的宽大的叶子也是片片向上,几乎没有斜生的,更不用说倒垂了;它的皮,光滑而有银色的晕圈,微微泛出淡青色。这是虽在北方的风雪的压迫下却保持着倔强挺立的一种树!哪怕只有碗来粗细罢,它却努力向上发展,高到丈许,两丈,参天耸立,不折不挠,对抗着西北风。
  1. 点转成拼音按钮
    唯一的多音词就出来了.

想要的效果和上面的网站类似

比如文本中有多个多音字,借助gse,把多音字在文本中的唯一音读出来。

You can use https://github.com/go-ego/gpy/tree/master/phrase.

package main

import (
	"fmt"

	"github.com/go-ego/gse"

	"github.com/go-ego/gpy"
	"github.com/go-ego/gpy/phrase"
)

var test = `西雅图都会区; 长夜漫漫, winter is coming!`

func main() {
	args := gpy.Args{
		Style:     gpy.Tone,
		Heteronym: true}

	py := gpy.Pinyin(test, args)
	fmt.Println("gpy:", py)

	s := gpy.ToString(py)
	fmt.Println("gpy string:", s)

	seg := gse.New("zh, dict.txt")
	pharse.WithGse(seg)
	// phrase.DictAdd["都会区"] = "dū huì qū"
	pharse.AddDict("都会区", "dū huì qū")

	fmt.Println("gpy phrase:", phrase.Paragraph(test))
	fmt.Println("pinyin: ", phrase.Pinyin(test))
	fmt.Println("Initial: ", phrase.Initial("都会区"))
}