iOS国际化字符串替换

国际化时定义的文本中需要外部数据替换,拼接太麻烦。
写过简单的工具,替换字符串中的值。

/// 替换国际化字符串中的值
    /// - Parameters:
    ///   - string: 原始字符串
    ///   - replaceTarget: 待替换字符(可以传入多个,index:标示根据 mark 切割后所占的下标位置;value:该位置对应的值。)
    ///   - mark: 替换标识
    ///   例子:"test" = "ABC*DEF*EGH*";
    ///   LocalizedTool.customLocalized(NSLocalizedString("test",comment:""), replaceTarget: [(index: 1, value: "123"), (index: 3, value: "234"), (index: 5, value: "345")])
    static func customLocalized(_ string: String, replaceTarget: [(index: Int, value: String)], mark: Character? = "*") -> String {
        var array = string.split(separator: mark!).map{String($0)}
        for target in replaceTarget {
            array.insert(target.value, at: target.index)
        }
        return array.joined()
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天,来姨妹姨妹夫家做客,姨妹夫晶哥做得一手好菜,红烧龙虾、烧海蟹、铁板鸭、烧海贝……能做出美食的男人,让人侧目。...
    大东合肥阅读 396评论 0 1
  • 嗨!各位老铁!时隔好些个月,我又回归简书,别问,我还是爱你们的。哈哈 今天其实只是想和大家聊聊我这个年...
    菜园子家的狗尾草阅读 451评论 1 0