使用.gsub在Ruby中加倍引号和标点符号

时间:2015-04-25 06:07:38

标签: ruby gsub

我正在尝试删除字符串中的所有双引号:

例如:“玛丽说”了望“!?”

“玛丽说”了望“!?”来自带有textarea标签的html表单

     <textarea id="receiver" name="receiver" class="form-control"  maxlength= "1080" type="text"></textarea>

然后将其放入名为Words的变量中。所以:

Words = "Mary said "Lookout"!?"

然后我跑

Words.gsub!(/[!?/A"|"/Z]/, "")

我想要输出:

Mary said Lookout

相反,我收到了错误,

"Mary said "Lookout"!?".gsub!(/[!?/A"|"/Z]/, "")
 SyntaxError: (irb):4: syntax error, unexpected tCONSTANT, expecting end-of-input "Mary said "Lookout"!?".gsub!(/[!?/A"|"/Z]/, "")

1 个答案:

答案 0 :(得分:0)

您收到的错误是因为您没有转义语音标记。 Ruby不会连续理解两个以上的语音标记,除非你告诉它它们应该在那里。试试这个:

"Mary said \"Lookout\"!?"

我相信你的gsub还有一个问题。首先尝试一下,看看你是否可以自己进一步。