在引号之间匹配文本

我只需要将文本匹配到“”。

我尝试使用此代码,但不起作用:(

text = ""This is an example text to be mathed"" text.scan(/^(")$(")/) 

提前致谢。

所以你的例子不起作用,因为你的字符串格式不正确。 也就是说,“boo”“不是Ruby字符串。 您可以使用单引号在其中创建带双引号的字符串并执行匹配,如下所示:

 >> boo = '"Sample text to be matched"' => ""Sample text to be matched"\n" >> boo.scan(/"(.*)"/) => [["Sample text to be matched"]] 

匹配字符串的更好模式是:

 /"(\\.|[^"])*"/ 

这将消耗反斜杠转义,但会在第一次终止时停止" (除非前面有反斜杠)。