質問編集履歴
2
foreach文の中で$mecab_resultを$mecab_result[]とすることで0番目の要素を取得できました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -144,17 +144,13 @@
|
|
144
144
|
|
145
145
|
|
146
146
|
|
147
|
-
$mecab_result = [];
|
148
|
-
|
149
|
-
|
150
|
-
|
151
147
|
$options = array('-d', '/usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd');
|
152
148
|
|
153
149
|
$mecab = new \MeCab\Tagger($options);
|
154
150
|
|
155
151
|
foreach($h5_values as $n){
|
156
152
|
|
157
|
-
$mecab_result = $mecab->parse($n);
|
153
|
+
$mecab_result[] = $mecab->parse($n);
|
158
154
|
|
159
155
|
|
160
156
|
|
1
不要な変数の削除、自分の行ったことを載せました。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
配列にある要素に対して形態素解析を行い
|
1
|
+
配列にある要素に対して形態素解析を行い配列に格納したい
|
test
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
-
DOMXpathを用いて指定したURLのhtmlから特定タグを取り出し、その文章に対して形態素解析を行っています。<h5>タグを取り出した際に、以下のような結果になりました。
|
3
|
+
DOMXpathを用いて指定したURLのhtmlから特定タグを取り出し、その文章に対して形態素解析を行っています。<h5>タグを取り出した際に、以下のような結果になりました。
|
4
|
-
|
5
|
-
|
6
|
-
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
-
|
7
|
+
<$h5_values>
|
8
8
|
|
9
9
|
|
10
10
|
|
@@ -22,6 +22,52 @@
|
|
22
22
|
|
23
23
|
|
24
24
|
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
この配列($h5_values)に対して、各要素ごとにmecabを用いて形態素解析を行い、その結果を配列($mecab_result)に格納したいのですが、以下のように出力したいです。
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
Array(0)
|
36
|
+
|
37
|
+
(
|
38
|
+
|
39
|
+
[0] => 旅行 名詞,一般
|
40
|
+
|
41
|
+
[1] => 代金 名詞,一般
|
42
|
+
|
43
|
+
・
|
44
|
+
|
45
|
+
・
|
46
|
+
|
47
|
+
・
|
48
|
+
|
49
|
+
[6] => ) 記号,括弧閉
|
50
|
+
|
51
|
+
[7] => 追加 名詞,一般
|
52
|
+
|
53
|
+
[8] => 料金 名詞,一般
|
54
|
+
|
55
|
+
・
|
56
|
+
|
57
|
+
・
|
58
|
+
|
59
|
+
・
|
60
|
+
|
61
|
+
[13] => ) 記号,括弧閉
|
62
|
+
|
63
|
+
)
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
現時点では、$h5_valuesの0番目の要素が取れていないのと、解析結果全てが一つの要素として配列に入ってしまい困っています。
|
68
|
+
|
69
|
+
|
70
|
+
|
25
71
|
### 該当のソースコード
|
26
72
|
|
27
73
|
|
@@ -72,10 +118,6 @@
|
|
72
118
|
|
73
119
|
|
74
120
|
|
75
|
-
$h4_values = [];
|
76
|
-
|
77
|
-
|
78
|
-
|
79
121
|
echo "/*------------<h5>----------------*/\n";
|
80
122
|
|
81
123
|
foreach ($xpath->query('//h5') as $h5_result){
|
@@ -92,17 +134,81 @@
|
|
92
134
|
|
93
135
|
|
94
136
|
|
137
|
+
$options = array('-d', '/usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd');
|
138
|
+
|
139
|
+
$mecab = new \MeCab\Tagger($options);
|
140
|
+
|
141
|
+
|
142
|
+
|
95
143
|
print_r($h5_values);
|
96
144
|
|
97
145
|
|
98
146
|
|
147
|
+
$mecab_result = [];
|
148
|
+
|
149
|
+
|
150
|
+
|
99
151
|
$options = array('-d', '/usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd');
|
100
152
|
|
101
153
|
$mecab = new \MeCab\Tagger($options);
|
102
154
|
|
155
|
+
foreach($h5_values as $n){
|
156
|
+
|
157
|
+
$mecab_result = $mecab->parse($n);
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
}
|
162
|
+
|
163
|
+
var_dump($mecab_result);
|
164
|
+
|
103
165
|
```
|
104
166
|
|
105
|
-
|
167
|
+
出力結果
|
168
|
+
|
169
|
+
```
|
170
|
+
|
171
|
+
<!DOCTYPE html>
|
172
|
+
|
173
|
+
<html>
|
174
|
+
|
175
|
+
<head>
|
176
|
+
|
177
|
+
<title>研究</title>
|
178
|
+
|
179
|
+
</head>
|
180
|
+
|
181
|
+
<body>
|
182
|
+
|
183
|
+
/*------------<h5>----------------*/
|
184
|
+
|
185
|
+
Array
|
186
|
+
|
187
|
+
(
|
188
|
+
|
189
|
+
[0] => 旅行代金(お一人様)
|
190
|
+
|
191
|
+
[1] => 追加料金(お一人様)
|
192
|
+
|
193
|
+
)
|
194
|
+
|
195
|
+
string(381) "追加 名詞,サ変接続,*,*,*,*,追加,ツイカ,ツイカ
|
196
|
+
|
197
|
+
料金 名詞,一般,*,*,*,*,料金,リョウキン,リョーキン
|
198
|
+
|
199
|
+
( 記号,括弧開,*,*,*,*,(,(,(
|
200
|
+
|
201
|
+
お 接頭詞,名詞接続,*,*,*,*,お,オ,オ
|
202
|
+
|
203
|
+
一人 名詞,固有名詞,人名,名,*,*,一人,カズト,カズト
|
204
|
+
|
205
|
+
様 名詞,接尾,人名,*,*,*,様,サマ,サマ
|
206
|
+
|
207
|
+
) 記号,括弧閉,*,*,*,*,),),)
|
208
|
+
|
209
|
+
EOS
|
210
|
+
|
211
|
+
```
|
106
212
|
|
107
213
|
### 試したこと
|
108
214
|
|
@@ -112,6 +218,8 @@
|
|
112
218
|
|
113
219
|
|
114
220
|
|
221
|
+
|
222
|
+
|
115
223
|
### 補足情報(FW/ツールのバージョンなど)
|
116
224
|
|
117
225
|
|