我在这里阅读了很多关于使用 Regexp 在 Ruby 中匹配嵌套大括号的文章。然而我无法适应我的情况,我陷入了困境。 Ruby 1.9 书中使用以下内容来匹配一组嵌套大括号
/\A(?<brace_expression>{([^{}]|\g<brace_expression>)*})\Z/x
我正在尝试通过三种方式改变这一点。 1. 我想使用括号而不是大括号,2. 我想在前面有一个字符(例如哈希符号),3. 我想匹配字符串中的任何位置,而不仅仅是开头和结尾。这是我到目前为止所拥有的。
/(#(?<brace_expression>\(([^\(\)]|\g<brace_expression>)*\)))/x
任何获得正确表达的帮助将不胜感激。
使用正则表达式修饰符x
在正则表达式中启用注释。所以#
正则表达式中的内容被解释为注释字符,正则表达式的其余部分将被忽略。你需要逃避#
或删除x
修饰符。
顺便说一句:不需要转义里面的括号[]
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)