【问题标题】:Check if a sentence or part of a sentence is a inside an other sentence检查一个句子或句子的一部分是否在另一个句子中
【发布时间】:2016-02-06 08:34:04
【问题描述】:

我想知道一个句子在另一个句子中有多少。

举例

我有两句话:

  • “这是第一个”
  • “我是第一个”

在这个例子中,我想要得到的结果是“第一个”在两个句子中。

我想从整个第二句话开始我的循环。我的意思是,如果“我是第一个”在“这是第一个”中,那么第一个搜索将是。 如果不是,请检查“我是”是否在里面,如果不是,请检查“我是第一个”。 然后将其拆分为 2 个单词,依此类推...直到我得到匹配(或不匹配)

在 JS 中最有效的方法是什么?

【问题讨论】:

  • 请显示你的循环。
  • 只是为了澄清我上面的评论,没有人会从头开始编写完整的代码来回答“请给我codez”的问题。请展示您到目前为止所做的尝试,并解释出了什么问题。此外,要求有点模糊。匹配单个单词怎么样?如果句子或单词的多个匹配项在结果中只出现一次呢?

标签: javascript angularjs loops factories


【解决方案1】:

您可以将两个字符串拆分为数组。

var array1 = 'This is the first'.split(' ');
var array2 = 'I am the first'.split(' ');

现在您可以遍历一个数组并找出该单词是否在另一个数组中。如果找到匹配项,则将其放入另一个数组中,最后加入由space分隔的匹配结果@

【讨论】:

    【解决方案2】:

    伪代码:

    var array1 = sentence1.split(' '), array2 = sentence2.split(' ')
    for(var array1length > 0; array1length--)
      for(array1.length to array1length)
        see if array1 subarray is inside of array2
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-06
      • 2018-08-12
      • 2019-03-26
      • 1970-01-01
      • 1970-01-01
      • 2016-05-24
      • 2021-07-16
      相关资源
      最近更新 更多