1use novel_segment::{DoSegmentOptions, Segment};
2
3fn main() -> Result<(), novel_segment::Error> {
4 let mut seg = Segment::new(novel_segment::SegmentOptions {
5 auto_cjk: true,
6 ..Default::default()
7 });
8 seg.use_default()?;
9 let text = "这是一个基于Rust的中文分词模块。";
10 let words = seg.do_segment(text, DoSegmentOptions::default());
11 println!("{text}");
12 println!(
13 "{}",
14 words
15 .iter()
16 .map(|w| format!("{}:{:x}", w.w, w.p.unwrap_or(0)))
17 .collect::<Vec<_>>()
18 .join(" / ")
19 );
20
21 let simple = seg.do_segment_simple(text, DoSegmentOptions::default());
22 println!("{}", simple.join(" / "));
23
24 seg.add_word("專有名詞", Some(novel_segment::POSTAG::D_N), Some(100.0))?;
25 Ok(())
26}