1 | <?php |
||
13 | class JaCompoundGroupTokenizer implements Tokenizer { |
||
14 | |||
15 | /** |
||
16 | * @var array |
||
17 | */ |
||
18 | private $compound = array( |
||
19 | "あっ", |
||
20 | "あり", |
||
21 | "ある", |
||
22 | "い", |
||
23 | "いう", |
||
24 | "いる", |
||
25 | "う", |
||
26 | "うち", |
||
27 | "お", |
||
28 | "および", |
||
29 | "おり", |
||
30 | "か", |
||
31 | "かつて", |
||
32 | "から", |
||
33 | "が", |
||
34 | "き", |
||
35 | "ここ", |
||
36 | "こと", |
||
37 | "この", |
||
38 | "これ", |
||
39 | "これら", |
||
40 | "さ", |
||
41 | "さらに", |
||
42 | "し", |
||
43 | "しかし", |
||
44 | "する", |
||
45 | "ず", |
||
46 | "せ", |
||
47 | "せる", |
||
48 | "そして", |
||
49 | "その", |
||
50 | "その他", |
||
51 | "その後", |
||
52 | "それ", |
||
53 | "それぞれ", |
||
54 | "た", |
||
55 | "ただし", |
||
56 | "たち", |
||
57 | "ため", |
||
58 | "たり", |
||
59 | "だ", |
||
60 | "だっ", |
||
61 | "つ", |
||
62 | "て", |
||
63 | "で", |
||
64 | "でき", |
||
65 | "できる", |
||
66 | "です", |
||
67 | "では", |
||
68 | "でも", |
||
69 | "と", |
||
70 | "という", |
||
71 | "といった", |
||
72 | "とき", |
||
73 | "ところ", |
||
74 | "として", |
||
75 | "とともに", |
||
76 | "とも", |
||
77 | "と共に", |
||
78 | "な", |
||
79 | "ない", |
||
80 | "なお", |
||
81 | "なかっ", |
||
82 | "ながら", |
||
83 | "なく", |
||
84 | "なっ", |
||
85 | "など", |
||
86 | "なら", |
||
87 | "なり", |
||
88 | "なる", |
||
89 | "に", |
||
90 | "において", |
||
91 | "における", |
||
92 | "について", |
||
93 | "にて", |
||
94 | "によって", |
||
95 | "により", |
||
96 | "による", |
||
97 | "に対して", |
||
98 | "に対する", |
||
99 | "に関する", |
||
100 | "の", |
||
101 | "ので", |
||
102 | "のみ", |
||
103 | "は", |
||
104 | "ば", |
||
105 | "へ", |
||
106 | "ほか", |
||
107 | "ほとんど", |
||
108 | "ほど", |
||
109 | "ます", |
||
110 | "また", |
||
111 | "または", |
||
112 | "まで", |
||
113 | "も", |
||
114 | "もの", |
||
115 | "ものの", |
||
116 | "や", |
||
117 | "よう", |
||
118 | "より", |
||
119 | "ら", |
||
120 | "られ", |
||
121 | "られる", |
||
122 | "れ", |
||
123 | "れる", |
||
124 | "を", |
||
125 | "ん", |
||
126 | "及び", |
||
127 | "特に", |
||
128 | "、", |
||
129 | "。", |
||
130 | "「", |
||
131 | "」" |
||
132 | ); |
||
133 | |||
134 | /** |
||
135 | * @var Tokenizer |
||
136 | */ |
||
137 | private $tokenizer; |
||
138 | |||
139 | /** |
||
140 | * @since 0.1 |
||
141 | * |
||
142 | * @param Tokenizer $tokenizer |
||
143 | */ |
||
144 | 3 | public function __construct( Tokenizer $tokenizer = null ) { |
|
147 | |||
148 | /** |
||
149 | * @since 0.1 |
||
150 | * |
||
151 | * {@inheritDoc} |
||
152 | */ |
||
153 | 1 | public function setOption( $name, $value ) { |
|
158 | |||
159 | /** |
||
160 | * @since 0.1 |
||
161 | * |
||
162 | * {@inheritDoc} |
||
163 | */ |
||
164 | public function isWordTokenizer() { |
||
167 | |||
168 | /** |
||
169 | * @since 0.1 |
||
170 | * |
||
171 | * {@inheritDoc} |
||
172 | */ |
||
173 | 2 | public function tokenize( $string ) { |
|
200 | |||
201 | /** |
||
202 | * @see MediaWiki LanguageJa::segmentByWord |
||
203 | * |
||
204 | * @since 0.1 |
||
205 | * |
||
206 | * {@inheritDoc} |
||
207 | */ |
||
208 | 2 | public function splitByCharacterGroup( $string ) { |
|
223 | |||
224 | 2 | private function insertSpace( $string, $pattern ) { |
|
227 | |||
228 | } |
||
229 |