[英]ruby on rails replace some string
我有兩個琴弦。 一種是:
"/system/musics/videos/000/000/001/original/%E5%B9%BF%E5%9C%BA%E8%88%9E%E5%BF%AB%E5%9B%9B_-_%E5%A4%A7%E8%8D%89%E5%8E%9F-%E4%BE%AF%E6%AD%8C.MP3"
第二個是:
"廣場舞快四_-_大草原-侯歌.MP3"
我想得到:
"/system/musics/videos/000/000/001/original/廣場舞快四_-_大草原-侯歌.MP3"
有誰知道如何在ruby中查找和替換字符串? 我的想法是用第二個字符串替換最后一個'/'
之后的內容。 我該怎么做?
first_string = "/system/musics/videos/000/000/001/original/%E5%B9%BF%E5%9C%BA%E8%88%9E%E5%BF%AB%E5%9B%9B_-%E5%A4%A7%E8%8D%89%E5%8E%9F-%E4%BE%AF%E6%AD%8C.MP3"
second_string = "廣場舞快四-_大草原-侯歌.MP3"
"#{File.dirname(first_string)}/#{second_string}"
處理文件名時,尤其是如果您的代碼有可能在多個操作系統上使用時,請使用內置的文件名處理方法dirname
和join
:
File.join(
File.dirname(
"/system/musics/videos/000/000/001/original/%E5%B9%BF%E5%9C%BA%E8%88%9E%E5%BF%AB%E5%9B%9B_-_%E5%A4%A7%E8%8D%89%E5%8E%9F-%E4%BE%AF%E6%AD%8C.MP3"
),
"廣場舞快四_-_大草原-侯歌.MP3"
)
原因是File.join
和File.dirname
知道在特定操作系統上使用的文件名分隔符,這要File::ALT_SEPARATOR
File::SEPARATOR
和File::ALT_SEPARATOR
,這使它們能夠正確拆分和File::ALT_SEPARATOR
路徑。
您還會經常發現File.basename
和File.extname
很有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.