javascript - 用于拆分成句子的正则表达式,忽略小数作为拆分的一部分?

标签 javascript regex

在 javascript 中,我对将文本主体拆分为数组句子很感兴趣,在拆分时它会忽略十进制数字(最好是网站)。我已经找到了如何为句子做到这一点 - 例如,str.split(/[\.\!]+\s*|\n+\s*/) - 但不确定如何添加忽略拆分中的十进制数字的额外位

例如,如果

str = "Hello there, the ice cream is $2.00.Toppings are extra."

会导致

["Hello there, the ice cream is $2.00", "Toppings are extra"]

这可能吗?

谢谢!

最佳答案

str = "Hello there, the ice cream is $2.00.Toppings are extra.";    
str.split(/[\.\!]+(?!\d)\s*|\n+\s*/); //[ 'Hello there, the ice cream is $2.00', 'Toppings are extra',]
  • (?!\d) 零宽度负先行匹配 digit。

如果先行匹配,则正则表达式不匹配,字符串不拆分。

关于javascript - 用于拆分成句子的正则表达式,忽略小数作为拆分的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52208602/

相关文章:

javascript - 想要使用reactjs显示更多功能

javascript - 如何在 Angular 表单上设置自定义验证?

javascript - 使用移动 css 布局在页面滚动上添加 css 规则

java - 将字符串的 Java ArrayList 转换为 JavaScript 数组

javascript - MVC - 模糊事件的远程验证

javascript - 将赋值 a.x=3 重构为 setter 方法 a->setX(3) 的脚本

C++ boost::regex 倍数捕获

python - 在字符串中查找子字符串的少量出现

python - 如何使用 Python Regex 查找首字母大写的所有单词

Javascript 从字符串中删除前导数字标签