Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在显示错误的同时,将连续字符串输入与javascript中的段落匹配?_Javascript_String_Algorithm - Fatal编程技术网

如何在显示错误的同时,将连续字符串输入与javascript中的段落匹配?

如何在显示错误的同时,将连续字符串输入与javascript中的段落匹配?,javascript,string,algorithm,Javascript,String,Algorithm,嘿,伙计们,我正在开发一个应用程序,到目前为止进展顺利,但在开发最近的功能时,我有点卡住了。 我的问题是: 使用java脚本,我可以获得连续的用户语音输入并进行转录。当我得到这个语音输入时,我希望能够识别并突出显示屏幕上正在阅读的文本。我想突出显示错误(不匹配的单词),并突出显示所有正确的内容。 我不是要求有人为我编写代码,我只是想被指向正确的方向 您可能在在线打字游戏中看到过类似的实现。你试着尽可能快地把文章的某些部分打出来,它会突出你做对的部分和你做错的部分 任何帮助都是我应该搜索的内容、库

嘿,伙计们,我正在开发一个应用程序,到目前为止进展顺利,但在开发最近的功能时,我有点卡住了。 我的问题是: 使用java脚本,我可以获得连续的用户语音输入并进行转录。当我得到这个语音输入时,我希望能够识别并突出显示屏幕上正在阅读的文本。我想突出显示错误(不匹配的单词),并突出显示所有正确的内容。 我不是要求有人为我编写代码,我只是想被指向正确的方向

您可能在在线打字游戏中看到过类似的实现。你试着尽可能快地把文章的某些部分打出来,它会突出你做对的部分和你做错的部分


任何帮助都是我应该搜索的内容、库、算法、方法或术语。谢谢大家!

您是否在为文本编制索引?你提前知道课文吗?如果使用文本中的每个单词创建内存中的图形数据库,则可以搜索边以查找“加权”命中。这是雄心勃勃的,但这里有一篇文章:

如果您想变得非常简单,并遵循您的打字游戏类比:

  • 在打字游戏中,每次输入(按键)都会触发一个事件
  • 将按下的键与预期的键进行比较
  • 如果不正确,则标记为错误
  • 通常没有办法回去纠正错误
  • 用户必须正确键入下一个期望的字母才能 让事情再次正常运转
你也可以做同样的事情

  • 在下一个期望的单词下面划线
  • 每个单词(空格)都是一个事件
  • 将文本到语音单词与所需单词匹配
  • 如果不正确,就把它标为错误,把它划掉
  • 用户必须正确说出下一个带下划线的单词,才能再次顺利开始
  • 您可以允许用户将所需的单词保留空格,以便他/她可以在他们想要的地方重新开始

这会有一些小问题,就像所有的语音到文本一样,但它会像你的打字游戏一样工作,而且实现起来很简单。

告诉我们你有什么代码到目前为止太长了,我只是为了清楚地解释一下。我正在使用bing语音转换为文本,因此我从recognizer.recognized=函数(s,e)获得连续结果,然后将其输入到我制作的Boyer MooreHorspool(字符串匹配alg)实现中。它找到文本的相应位置并高亮显示。这不太好,因为演讲必须与页面上的内容完美匹配。如果子字符串的任何部分在内容中不匹配,则Boyer MooresHorspool不起作用。我希望能够在用户阅读时不断地阅读文章,并显示匹配和错误。谢谢,我来看看。虽然这是一篇非常有趣的文章,我将仔细阅读,但快速看一看,对于我所要求的,这似乎是过火了。