javascript - 捕获段落中的所有问题

标签 javascript regex parsing

我一直在尝试使用 Javascript 的 RegEx 来解析给定段落中的每个问题。但是,我得到了不需要的结果:

Javascript

regex = /(\S.+?[.!?])(?=\s+|$)/g;
result = regex.exec("I can see you. Where are you? I am here! How did you get there?");

预期结果

["Where are you?", "How did you get there?"]

实际结果

["I can see you.", "I can see you."]

PS:如果有更好的方法,我会洗耳恭听!

最佳答案

试试这个:

var x = string.match(/\(?[A-Z][^\.!\?]+[!\.\?]\)?/g);
x.filter(function(sentence) {
  return sentence.indexOf('?') >= 0;
})

关于javascript - 捕获段落中的所有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14223893/

相关文章:

javascript - 如何从 Node 中的客户端提取zip

regex - 在 Linux 中使用正则表达式重命名文件

java - 从 java 服务器页面中删除所有 HTML

java - 在 jsoup 中搜索包含特定文本的图像类

java - Apache 消化器 : NoSuchMethodException: no such accesible method

javascript - 找不到 socket.io.js

javascript - 在 AngularJS 中使用 ngInfiniteScroll 指令实现反向无限滚动

javascript - 选择 ul 元素内具有相同类的 ul 元素

java - 如何仅使用 java 正则表达式匹配字母,匹配方法?

regex - 在将其用于替换之前对正则表达式中捕获的数字进行计算