如何检查字符串是否是有效查询
How to check if string is a valid inquiry
我需要确保某些字符串是有效问题。我正在考虑如何自己写这个,但不限制它实际上是一个相当复杂的分析,我敢肯定以前一定已经做过很多次了。
我不只是在谈论以疑问词开头和以问号结尾的问题。例如,我希望所有这些都通过:
- 大峡谷很大吗?
- 我知道峡谷通常都很大,但大峡谷很大吗?
- 我刚才在想,大峡谷是大峡谷吗?
我很想获得一个现有的 js 库(或移植一些东西)来为我做这件事。我已经四处寻找了一段时间,但一无所获。
- P.S。我不得不在标题中使用 'inquiry' 这个词,因为 'question' 这个词被禁止了。
Alex K 在我的问题下的评论中给出了我需要的确切答案。
太棒了! :-)
编辑:
根据要求,这是一个工作示例。
在安装了 npm 的终端中,输入以下内容:
npm install compromise
现在要测试字符串 (myString) 是否包含问题,您将使用以下内容:
var nlp = require('compromise');
var containsQuestion = nlp(myString).questions().data().length === 1;
(如上例,多题也得出否定结果)
我需要确保某些字符串是有效问题。我正在考虑如何自己写这个,但不限制它实际上是一个相当复杂的分析,我敢肯定以前一定已经做过很多次了。
我不只是在谈论以疑问词开头和以问号结尾的问题。例如,我希望所有这些都通过:
- 大峡谷很大吗?
- 我知道峡谷通常都很大,但大峡谷很大吗?
- 我刚才在想,大峡谷是大峡谷吗?
我很想获得一个现有的 js 库(或移植一些东西)来为我做这件事。我已经四处寻找了一段时间,但一无所获。
- P.S。我不得不在标题中使用 'inquiry' 这个词,因为 'question' 这个词被禁止了。
Alex K 在我的问题下的评论中给出了我需要的确切答案。
太棒了! :-)
编辑:
根据要求,这是一个工作示例。
在安装了 npm 的终端中,输入以下内容:
npm install compromise
现在要测试字符串 (myString) 是否包含问题,您将使用以下内容:
var nlp = require('compromise');
var containsQuestion = nlp(myString).questions().data().length === 1;
(如上例,多题也得出否定结果)