Open Chinese Convert: JiebaSegmentation.hpp Source File

Open Chinese Convert 1.3.2.dirty A project for conversion between Traditional and Simplified Chinese

Loading...
Searching...
No Matches
JiebaSegmentation.hpp
1/*
2 * Open Chinese Convert
3 *
4 * Copyright 2026 Frank Lin <github@linshuang.info>
5 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18
19#pragma once
20
21#include "Common.hpp"
22#include "Segmentation.hpp"
23
24namespace cppjieba {
25class Jieba;
26}
27
28namespace opencc {
29
30 class JiebaSegmentation : public Segmentation {
31public:
32 using Segmentation::Segment;
33
34 JiebaSegmentation(const std::string& dictPath,
35 const std::string& modelPath,
36 const std::string& userDictPath = "",
37 const std::string& idfPath = "",
38 const std::string& stopWordsPath = "");
39
40 ~JiebaSegmentation() override;
41
42 SegmentsPtr Segment(std::string_view text) const override;
43
44private:
45 std::unique_ptr<cppjieba::Jieba> jieba_;
46};
47
48} // namespace opencc
opencc::JiebaSegmentation::Segment
SegmentsPtr Segment(std::string_view text) const override
Splits text into segments and returns them.
Definition JiebaSegmentation.cpp:319
opencc::Segmentation
Abstract base for text segmentation.
Definition Segmentation.hpp:38
opencc::Segmentation::Segment
virtual SegmentsPtr Segment(std::string_view text) const =0
Splits text into segments and returns them.