【问题标题】:Swift: Getting currency symbol from an amount textSwift:从金额文本中获取货币符号
【发布时间】:2019-11-04 02:12:06
【问题描述】:

如何从包含金额和符号的字符串中提取货币符号。这些字符串可以是任何国际格式,因为我从NumberFormatter 获得它们。此类字符串的一些示例及其结果如下:-

$446.99 =-> $

445,34 45 美元 => 美元

445,34 45 美元 => 美元

567 泰铢 => 泰铢

567 泰铢 => 泰铢

还有更多。

我已经知道NumberFormatter 属性currencySymbolinternationalCurrencySymbol 但它们无助于获得通用解决方案,因为如果是美元,它们分别返回您美元和美元。如果那里有任何regex,那么我也很乐意尝试。

PS:我需要这些信息来根据以下图片格式化我的货币符号:-

【问题讨论】:

    标签: ios swift cocoa-touch nsnumberformatter


    【解决方案1】:

    你可以这样做:

    let currency = str.trimmingCharacters(in: CharacterSet(charactersIn: "0123456789., "))
    

    【讨论】:

      【解决方案2】:

      这是filter out 提及String 中的字符的方法之一:

      let filteredString = String("567 THB".filter { String($0).rangeOfCharacter(from: CharacterSet(charactersIn: "0123456789.,")) == nil }).trimmingCharacters(in: .whitespacesAndNewlines)
      //TBH <- prints
      

      【讨论】:

        猜你喜欢
        • 2023-03-29
        • 1970-01-01
        • 2014-12-07
        • 2011-11-26
        • 2011-03-01
        • 1970-01-01
        • 2020-12-20
        • 1970-01-01
        • 2012-02-01
        相关资源
        最近更新 更多