У меня есть массив строк, которые по сути являются английскими абзацами.
Я хотел бы извлечь все экземпляры слова Act
(с заглавной буквой) в контексте. В контексте здесь означает, что я хотел бы видеть some text some text some text Act some text some text some text
.
Может быть, около 12-15 слов слева и 5-8 слов справа. Это очень похоже на корпусное согласование для слова Act
.
Однако я бы хотел исключить случаи Act
, где:
Act
[0-2 слова] (Cap.
// то есть, когда за Act
следуют 0-2 слова и затем строка (Cap.
Act
[0-2 слова (Act
// то есть, когда за Act следует 0-2 слова и затем строка (Act
[Act
// то есть, когда Act предшествует [
- ... и другие подобные случаи ...
Как бы вы сделали это с собственным PHP или PHP-фреймворком, который поддерживает NLP? Пожалуйста, покажите точно (т.е. предоставьте код), даже если вы используете НЛП или другую платформу или библиотеку. Просьба показать, какие функции, объекты или методы вы используете.
Я могу использовать только PHP, но если у вас есть другие языки, которые могут сделать это лучше, пожалуйста, оставьте комментарий. Примечание. Мне нужно сначала подключиться к MySQL для извлечения строк в массив, поэтому желательно, чтобы язык поддерживал взаимодействие с MySQL.
Я могу отказаться от работы со словами и вместо символов, если это трудно сделать в PHP (например, у меня может быть 40-45 символов слева и 20-25 символов справа в качестве контекста для Слово Акт). Я тоже не против использования регулярных выражений.