【问题标题】:Remove and change a character on string [closed]删除和更改字符串上的字符[关闭]
【发布时间】:2026-01-11 19:40:02
【问题描述】:

我有一个字符串数组。我想要的是从字符串中删除字符“,”并将字符“]”更改为“|”。

字符串 = 3.1321309062246026, 42.02829431948331],

我想得到: 字符串 = 3.1321309062246026, 42.02829431948331|

所以我想删除最后的“,”,但不是中间的那个。也将 ] 更改为 | .它必须像这样改变 3.1321309062246026,42.02829431948331|

【问题讨论】:

  • 您的问题很可能会被删除,因为它是如此基本和笼统。可能有大约 40 种不同的方式来做你正在谈论的事情,而且它们可能都已经在之前的问题中介绍过了。话虽如此,如果您想要一个战斗的机会,我会首先对您的帖子进行一些重要的编辑。首先,print path[0] 在 Ruby 中不是一个有效的名称。其次,你的价值是不可能的。我认为它应该是一个字符串,因此用引号括起来,但我不能确定。
  • 试试str.sub(/\],\z/,'|')
  • 请提供实际的 Ruby 代码。显示 JSON 输入和您从中生成的字符串数组。关于为什么需要这种转换的一些解释也可能会有所帮助。
  • 抱歉,我是新手。有人已经在评论中向我展示了一个解决方案。我将我的问题更改为更有效和更具体。
  • @CodrinM 您的字符串缺少分隔符。

标签: arrays ruby string


【解决方案1】:

输入

a="3.1321309062246026, 42.02829431948331],"

代码

p a.gsub(/\]/,"|").gsub(/,\z/,"")

输出

"3.1321309062246026, 42.02829431948331|"

【讨论】:

  • Ty im rlly bad whit strings.