【问题标题】:using .gsub to double quotes and punctuation in Ruby在 Ruby 中使用 .gsub 双引号和标点符号
【发布时间】:2015-04-25 06:07:37
【问题描述】:

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

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

“玛丽说“了望台”!?”来自带有 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]/, "")

【问题讨论】:

  • 我应该指定方法中的接收者来自html表单。我相信 Ruby 总是会将字符串设置为双引号。
  • 请分享收件人和表单代码

标签: ruby gsub


【解决方案1】:

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

"Mary said \"Lookout\"!?"

我相信您的 gsub 仍然存在问题。首先尝试一下,看看你是否可以自己走得更远。

【讨论】:

  • 我应该指定方法中的接收者来自一个表单,所以我不能再将 \\ 添加到字符串中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-14
  • 2019-04-27
  • 2011-10-06
  • 2014-06-14
相关资源
最近更新 更多