正则表达式(en-US)查找所有标点符号,除非是单词的一部分

时间:2017-11-15 03:45:27

标签: javascript regex

我发现正则表达式可以找到所有带连字符和“萎缩”的单词:

(?=\S*['-])([a-zA-Z'-]+)

示例: l'Equipe 以行动为导向

我不确定如何利用这些信息在搜索后得到我想要的东西......

1 个答案:

答案 0 :(得分:1)

试试这个正则表达式

(?<=\b)[,.'-:"]+(?=\s|$)|"

演示:https://regex101.com/r/mDhl17/1/

以下是一些细节

  • 此正则表达式将以带有单词边界标记的Positive Lookbehind开头,以排除任何前面带字母的标点符号。
  • 我们之后添加目标标点符号[,.'-:"]+。您可以将任何您喜欢的内容添加到列表中。
  • 我们希望标点符号后跟空格或句子(?=\s|$)的末尾。
  • 这是一个例外,是引号" ",我们希望在它们出现时捕获它们,所以我在最后添加了OR |条件。