我有一个正则表达式,我正在尝试在 Ruby 中使用它。这是我的正则表达式,当我添加双转义键时它在 Java 中工作
\(\*(.*?)\*\)
我知道这是一个简单的问题,但是我将如何将其编写为 ruby 表达式并将其设置为等于变量?我很感激任何帮助。
试试这个:
myregex = /\(\*(.*?)\*\)/
需要明确的是,这只是将正则表达式保存到变量中。要使用它:
"(**)" =~ myregex
试试这个:
if /\(\*(.*?)\*\)/ === "(*hello*)"
content = $1 # => "hello"
end
正则表达式是 Ruby 中的原生类型(实际的类是“Pattern”)。你可以写:
mypat = /\(\*(.*?)\*\)/
[看起来像'('/')'对之间的任何东西,是吗?]
然后你可以做
m = mypat.match(str)
comment = m[1]
...或者,更紧凑
comment = mypat.match(str)[1]