PersianSwift 1.7

PersianSwift 1.7

Omid Golparvar维护。



CocoaPods Compatible Platform

پارسی‌سوییفت

PersianSwift 是一个用于 Swift 语言的库,使使用该语言进行波斯语编程更加容易和愉快。

为了使用方便,大多数图书功能都通过为 Swift 中各种数据类型定义扩展来实现。

例如,使用以下工具,将数值 12345 转换为其对应的文本值,并带有相应的波斯数字。

let int = 12345
let persianString = int.ps.stringWithPersianDigits // ۱۲۳۴۵

安装方法

您可以使用 CocoaPod 很容易地将此库添加到您的项目中。

pod 'PersianSwift', '~> 1.5' // Swift 3.0
pod 'PersianSwift', '~> 1.7' // Swift 4.0

安装后,您可以在需要的地方导入它并使用其功能。

import PersianSwift

下面我们将详细介绍已实现的各个部分。


使用预定义命令

文本或简称 String

  • 检查文本是否为手机号码

String.ps.isPersianPhoneNumber -> Bool

  • 将现有文本转换为包括数字到阿拉伯数字或拉丁数字的转换

String.ps.withPersianDigits -> String
String.ps.withEasternDigits -> String

String.ps.toPersianDigits() -> Void
String.ps.toEnglishDigits() -> Void

  • 将文本中特殊字符转换为波斯文(阿拉伯字母和波斯字母)

String.ps.withFixedPersianCharacters -> String
String.ps.fixPersianCharacters() -> Void

  • 将现有文本转换为带有价格外观的文本

    如果文本不是结构化的数字 "12345" 形式,则输出 `nil`。

String.ps.withIranRialStyle -> String?
String.ps.withIranTomanStyle -> String?
String.ps.withCurrencyStyle -> String?

  • 将结构化文本转换为对应的公历日期

    如果文本不是如 "2017-06-03 17:23:41" 这样的日期格式,输出 `nil`。当然,您可以在使用此方法时设置输入的格式。

String.ps.asPersianDate(fromGregorianFormat: String) -> String?

数字如 Int Double Float

为此类型,首先定义了一个名为 Numeric 的协议,然后 Int, Double, Float 类型使用此协议。

public protocol Numeric {}

extension Int    : Numeric {}
extension Double : Numeric {}
extension Float  : Numeric {}

然后向该协议添加了下述内容。

  • 以文本形式获取数字

Numeric.ps.string -> String

  • 以文本和波斯数字形式获取数字

Numeric.ps.stringWithPersianDigits -> String

  • 以文本和价格外观形式获取数字

Numeric.ps.stringWithCurrencyStyle -> String

关于日期或日期

使用已准备的元素,可以轻松地将日期转换为农历。例如,使用从 Web 服务获得的 `timeinterval` 创建一个日期,然后轻松地将其转换为农历。

已准备的情况及其示例输出如下

let date = Date(timeIntervalSince1970: TimeInterval(exactly: 629152200)!)
_ = date.ps.asPersianDate // شنبه ۱۸ آذر ۱۳۶۸
_ = date.ps.asFullPersianDateTime // شنبه ۱۸ آذر ماه ۱۳۶۸ ساعت ۱۲:۰۰:۰۰ قبل از ظهر

数组

数组或 String

  • 对 String 数组进行排序和获取输出

    该命令将对 String 数组进行操作,将其排序并返回排序后的数组。

[String].ps.sortedPersianStrings

  • 对 String 数组进行就地排序

    该命令将对 String 数组进行操作,就地对其进行排序。使用此命令时,您可以选择排序是升序还是降序。

[String].ps.sortPersianStrings(desc: Bool)

合作

任何合作和合作都受到衷心的欢迎。让我们一起携手吧!!!😆😂😋