You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ruby如何将含可变空白分隔符的字符串转换为指定格式数组?

Ruby on Rails 实现方案

你可以直接使用String#split配合正则表达式实现需求,无需拆分后逐个处理空白,单行代码即可完成转换:

# 示例输入字符串
input_str = "hello:world, foo:bar,biz:baz,    last:term  "
# 核心处理逻辑
target_arr = input_str.strip.split(/\s*,\s*/)

执行后得到的target_arr就是你需要的["hello:world", "foo:bar", "biz:baz", "last:term"]。

逻辑说明

  • 首先调用strip去除整个字符串首尾的所有空白,避免最后一个元素尾部带多余空格
  • 拆分用的正则/\s*,\s*/释义:
    • \s 匹配任意空白字符(空格、制表符、换行符等)
    • * 表示匹配前面的规则0次或多次
    • 整个正则会匹配「逗号 + 逗号前后所有连续的空白」,拆分时这部分内容会全部作为分隔符被移除,拆分出的每个元素天然不带前后多余空白

边界兼容

如果你的业务场景中可能出现连续逗号、首尾带逗号的输入,避免拆分出空元素可以加一层过滤:

target_arr = input_str.strip.split(/\s*,\s*/).reject(&:empty?)

内容的提问来源于stack exchange,提问作者R. Freedman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 00:06:06