Ruby中嵌套的POSIX正则表达式字符类?

时间:2014-09-19 16:48:29

标签: ruby regex posix nested character-class

如何将POSIX样式的字符类嵌套在另一个字符类中?

我正在尝试替换空格或破折号的匹配:

/[\s-]/

/[[[:space:]]-]/

这不起作用。我使用的是Ruby 1.9.3,官方文档没有嵌套的例子。我需要POSIX风格,因为我正在使用UTF-8,我的例子从实际表达式中黯然失色。

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

不需要你的第三套[]。

[:space:]声明仅在一个集合内部有效,因此如果它本身被使用,您将看到它显示为[[:space:]]。在这种情况下,您有更多字符,因此以下内容将起作用。

[[:space:]-]