推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
tianxiacangshen

点击文本选择整个句子的 js 如何实现?

  •  
  •   tianxiacangshen · Dec 5, 2017 · 3149 views
    This topic created in 3106 days ago, the information mentioned may be changed or developed.
    感觉有点麻烦,前后不能单纯以空格判断,有可能是标点,但又不能是所有标点,比如这段:

    https://www.v2ex.com 是一个好网站,这里有很多牛逼的人
    到底有多牛逼呢?”

    在 V2EX 上点击一下就选择“ https://www.v2ex.com 是一个好网站”这一句,前后可以根据标点判断,但是要把:这个标点排除,否则只会选择“//www.v2ex.com 是一个好网站”这部分,想来想去正则不知道怎么写。
    9 replies    2017-12-06 12:50:40 +08:00
    yangg
        1
    yangg  
       Dec 5, 2017
    lz 既然已经解决了怎么定义为一句的问题,剩下就简单了
    个人建议: 输出时分好句(不一定得正则啊),点击直接选择就好了
    ffkjjj
        2
    ffkjjj  
       Dec 5, 2017 via iPhone
    通过正则匹配 : 前后类容,如果是网址的话就继续 向前|向后 匹配。
    我觉得,通过一些分词的 api 应该可以更简单实现你的需求。通过分词之后,应该就可以直接进行标点匹配了。PS.不过我没实际尝试过,感觉可以试试。
    lhx2008
        3
    lhx2008  
       Dec 5, 2017 via Android
    分词 api
    billion
        4
    billion  
       Dec 5, 2017
    有一种东西叫做有限状态机,你去了解一下吧。
    duan602728596
        5
    duan602728596  
       Dec 5, 2017 via iPhone
    const range = document.createRange();
    range.selectNode(document.getElementById(ele));
    const selection = window.getSelection();
    if(selection.rangeCount > 0) {
    selection.removeAllRanges();
    }
    selection.addRange(range);
    tianxiacangshen
        7
    tianxiacangshen  
    OP
       Dec 5, 2017
    @ffkjjj 分词之后只是把句子打散了?怎么判断哪些标点是网址里面的呢,你前面说的如果是网址的话就继续 向前|向后 匹配 应该靠谱一点
    ffkjjj
        8
    ffkjjj  
       Dec 6, 2017 via iPhone
    @tianxiacangshen 因为分词 api 不会把网址打断,你就可以直接根据标点来判断句子首尾了。
    下面图中是 PIN 软件里面的分词功能
    https://i.loli.net/2017/12/06/5a2769242aa0e.jpeg
    ffkjjj
        9
    ffkjjj  
       Dec 6, 2017 via iPad
    @tianxiacangshen https://i.loli.net/2017/12/06/5a2776468ae54.png
    你也可以通过这种正则思路来进行分句子。英语情景差不多。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1037 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 18:10 · PVG 02:10 · LAX 11:10 · JFK 14:10
    ♥ Do have faith in what you're doing.