正则表达式匹配类中除特定字符之外的所有字符

时间:2012-03-20 13:47:22

标签: ruby regex

除了[[:punct:]]@之外,最好的方法是匹配班级#中的所有标点符号?

2 个答案:

答案 0 :(得分:9)

您可以使用否定前瞻:

(?:(?![#\@])[[:punct:]])+

答案 1 :(得分:1)

[[:punct:]]相当于[!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~]

请参阅:http://www.regular-expressions.info/posixbrackets.html

您可以简单地提取您不想要的符号: [!"$%&'()*+,-./:;<=>?[\]^_`{|}~]