gpt4 book ai didi

Ruby 解析字符串并返回数组

转载 作者:太空宇宙 更新时间:2023-11-03 17:31:39 29 4
gpt4 key购买 nike

我有输入字符串 str ="/Users/user/Desktop/task/U6342_Account_20150112.txt"

作为返回,我想要数组 ['U6342','Account','20150112']

为了得到我所做的结果

str.split('/')[-1].gsub('.txt','').split('_')

输出 ['U6342','Account','20150112']

现在我的问题 - 有没有更好的解决方案?

最佳答案

Ruby 有一个用于类似情况的内置 File 类。

fname = File.basename(str, '.*') # "U6342_Account_20150112"
fname.split('_') # ["U6342", "Account", "20150112"]

或者,简而言之:

File.basename(str, '.*').split('_')

编辑:basename 中的第二个参数告诉函数文件的后缀是什么。它支持* 通配符来匹配任何后缀,然后从结果中移除它。示例:

File.basename(str, '.*') # "U6342_Account_20150112"
File.basename(str, '.txt') # "U6342_Account_20150112"
File.basename(str, '.jpg') # "U6342_Account_20150112.txt" => suffix not removed

在这里阅读更多 http://ruby-doc.org/core-2.2.0/File.html#method-c-basename

关于Ruby 解析字符串并返回数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34173368/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com