从一段文本中找出javascript中的关键字

从一段文本中找出javascript中的关键字,javascript,php,html,laravel,Javascript,Php,Html,Laravel,我如何从JavaScript中的输入中获取关键字,例如(textarea,text,…),然后将该关键字存储在字符串的数组中,使其字长大于或等于七,让我向您展示一个例子,我在HTML中有以下段落: <html> ... <body> <textarea id="keyword" cols="10" rows="20" placeholder="write content here"></textarea> <

我如何从JavaScript中的输入中获取关键字,例如(
textarea
text
,…),然后将该关键字存储在
字符串的
数组中,使其字长大于或等于七,让我向您展示一个例子,我在HTML中有以下段落:

<html>
 ...
   <body>
          <textarea id="keyword" cols="10" rows="20" placeholder="write content here"></textarea>
   </body>
 </html>

我怎样才能做到这一点?

您试图创建的函数是不可能的,因为如果您查看任何信息性的句子,那么您将发现数十亿个这样的关键字。Javascript或PHP语言不知道这些词是否是特殊的词,只有我们人类将它们视为关键词。因此,对于这个问题,您可能需要自己定义数组


*有一种方法。您可以检查段落中的每个单词,如果第一个字母是大写字母,那么您可能希望存储它(因为您的大多数关键字都以大写字母开头)。计算出这个逻辑的代码。

我会尝试使用postaging

这可能会为您指明正确的方向

我要做的是,确定所有这些词的词性,然后遍历列表,将哪些词是名词和形容词添加到数组中

虽然不完美,但这将是一个开始。下面是一个代码示例

var pos = require('pos');
var words = new pos.Lexer().lex('The Eloquent ORM included with Laravel provides a beautiful, simple ActiveRecord implementation for working with your database');
var tagger = new pos.Tagger();
var taggedWords = tagger.tag(words);
var output=[];
for (i in taggedWords) {
    var taggedWord = taggedWords[i];
    var word = taggedWord[0];
    var tag = taggedWord[1];
    //check if tag is a noun or adjective
    if(tag.indexOf('NN')==0 || tag.indexOf('JJ')==0)
       output.push(word)
}
console.log(output)
我的输出是

[ 'Eloquent',
'ORM',
'Laravel',
'beautiful',
'simple',
'ActiveRecord',
'implementation',
'database' ]

基本上,只有simple出现了

javascript(或者PHP?)应该如何知道哪个词是关键字?关键字是什么意思?这些关键词是预定义的吗?你要么需要一个关键词列表,要么需要一个无用词列表so@Dawlatzai我的意思是你需要自己先定义它,PHP、JS或任何语言都不能为你定义它,也可能是向后做,只是有一系列无用的词,比如“The”、“That”等等。。
[ 'Eloquent',
'ORM',
'Laravel',
'beautiful',
'simple',
'ActiveRecord',
'implementation',
'database' ]