使用正则表达式获取最终特殊字符

时间:2014-09-05 09:43:52

标签: regex

我想要一个正则表达式,它在字符串的末尾分组一些特殊字符。 特殊字符是/ - _和空格。 例如,如果我有字符串(test) --- ---我想在组中获得字符串“--- ---”。 我创建了以下正则表达式:([ -\/_]*)$ 问题是,它为我提供了以下字符串) --- --- 为什么要提取最终的算法?

2 个答案:

答案 0 :(得分:3)

-符号放在第一个或最后一个内部char类中。否则,它采用从空格到/(正斜杠)的范围。 )符号也属于该范围,因此它与)匹配。

([- \/_]+)$
字符类中的

-仅当它不在第一个或最后一个或未被转义时才充当范围运算符。

答案 1 :(得分:1)

   ([ \-\/_]*)$

你应该逃避 - 这并不意味着范围。