对于我认识的大多数正则表达式专家来说,这是一个简单的问题,但我正在尝试返回句子中某些大括号之间单词的所有匹配项;但是 Ruby 只返回一个匹配项,我不知道为什么。
我正在使用这个例句:
sentence = hello {name} is {thing}
使用此正则表达式尝试返回“{name}”和“{thing}”:
sentence[/\{(.*?)\}/]
但是,Ruby 只返回“{name}”。谁能解释为什么这两个词不匹配?
最佳答案
你很接近,但使用了错误的方法:
sentence = "hello {name} is {thing}"
sentence.scan(/\{(.*?)\}/)
# => [["name"], ["thing"]]
关于ruby - 用于匹配一组大括号之间的所有单词的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2210755/