除了'Lorem‘这个词外,我想选择每个单词。
我试过:
^((?!Lorem).*)$ //nothing is selected.
^((?!test).*)$ //entire paragraph is selected.文本: Lorem ipsum dolor,Lorem ipsum dolor,consectetur adipiscing elit.这是一种很好的方法。库拉比图尔对一条白斑蛇进行审判。莫比和狮子座的不允许饮食。纳姆拉库斯湖,在条件和条件下,累积无无。乌贼,乌贼。在维里特,三位一体的不,港口在紫色。长春花,非苏打水,非苏铁。[医]同[同][1][1]同[同][1]例[1][1][1][1][1][1][1][1][1][1][1][1][1]同[同][1][1][1][1][1][1][1][1]同[同][1][1][1][1][1][1][1][1][1][1][1][1]赤霉病( Fusce mattis ultricies lORem adipiscing )在发酵中,长尾叶蜂坐席,前庭前庭,边缘等。Nunc eget lorem在leo commodo porta feugiat vel quam。南汽,白板,电子吞吐明渠在。Nullam augue neque,lacinia quis commodo a .库拉比图尔·欧盟的三位一体。在狮子座,水母( Phasellus,sem ),小木耳( odio ligula posuere mauris ),独角兽( sollicitudin pharetra massa tortor )。在刚玉中的拍卖人。Nullam非合作猫科动物。草皮前庭在大皮紫花苜蓿上进行皂角运动。[医]肉桂,[医][医].
测试at: http://regexpal.com/
发布于 2011-12-02 22:48:17
这将获得文本中的所有单词,但 Lorem除外。
result = subject.match(/\b(?!Lorem\b)\w+\b/g);不知道这是不是你要找的!
解释:
// \b(?!\bLorem\b)\w+\b
//
// Assert position at a word boundary «\b»
// Assert that it is impossible to match the regex below starting at this position (negative lookahead) «(?!\bLorem\b)»
// Match the characters “Lorem” literally «Lorem»
// Assert position at a word boundary «\b»
// Match a single character that is a “word character” (letters, digits, etc.) «\w+»
// Between one and unlimited times, as many times as possible, giving back as needed (greedy) «+»
// Assert position at a word boundary «\b»发布于 2011-12-02 22:44:29
你是说你想要创建一个段落的副本,删除冒犯的单词?为此,您可以使用:
var filtered = paragraph.replace(/\bLorem\b/g, '');基于以下评论更新:噢,所以您需要:
var filtered = paragraph.replace(/\b(?!Lorem\b)(\w+)/g, 'matched word:$1');发布于 2011-12-02 22:50:03
不需要正则表达式:
s.split('Lorem').join('');当然,对于不区分大小写的版本,您需要一个:
s.split(/Lorem/i).join('');如果“选择”是指您想要一个包含lorem以外的每个单词的数组,则接受上面的输出并在一个单词边界上拆分,例如\s+或\b。
https://stackoverflow.com/questions/8363590
复制相似问题