nlp — Массив PHP перед элементом и после элемента

У меня есть строка, и я превращаю ее в массив следующим образом:

$a = "adik melempar kail ke tengah danau"

Array:

[0] => adik
[1] => melempar
[2] => kail
[3] => ke
[4] => tengah
[5] => danau

Я отметил array[1] => melempar как глагол (ката кержа).

Как пометить следующий массив (после array[1]) как объект и предыдущий массив (перед array[1]) как предмет?

Английский пример может быть:

$a = "brother throw hook to the lake"

Array:

[0] => brother
[1] => throw
[2] => hook
[3] => to
[4] => the
[5] => lake

0

Решение

Собираетесь ли вы перебирать массив в поисках глаголов? Предполагая, что у вас есть переменная индекса индекса $ index, вы можете сделать что-то вроде этого:

$words = explode(" ", $theSentence);
$index = 0;
foreach($words as $key=$theWord){
// apply your logic here that determines whether word is a verb
if isVerb($theWord){
$arrayResult[$index] = "verb";
if($index > 0){
$arrayResult[$index - 1 ] = 'subject';
arrayResult[$index + 1 ] = 'object';
}

}
}


...

Конечно, все это очень общее, поскольку я не знаю контекста. Похоже, у вас есть какая-то логика, чтобы определить, какие слова по обе стороны от глагола.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]