我试图创建一个匹配单词或任何标点符号的正则表达式,但连字符( - )除外。换句话说,我喜欢正则表达式将连字符视为单词的一部分。我提出的解决方案并没有为我解决问题:
[^[(?![-])\p{Punct}]\s]+|(?![-])\p{Punct}
[^[\p{Punct}&&[^-]]\s]+ |[\p{Punct}&&[^-]]
(交替的第一部分应该匹配单词(包括带连字符的单词),第二部分是匹配任何标点符号,但是用于连字符。)
有人可以请教我这个问题吗?我对正则表达式完全陌生。任何帮助将不胜感激。
答案 0 :(得分:2)
最后,我找到了完全满足我需求的解决方案。希望这可以帮助可能遇到类似问题的人。
[[^\p{Punct}\s]-]+|[\p{Punct}]