Documentation
¶
Overview ¶
Package num2persian converts numbers to their Persian (Farsi) text representation.
Index ¶
- func Convert(n int64) string
- func ConvertBigInt(n *big.Int) string
- func ConvertFloat(n float64, precision int) string
- func ConvertInt(n int) string
- func ConvertOrdinal(n int64) string
- func ConvertOrdinalInt(n int) string
- func ConvertString(s string) (string, error)
- func RialToToman(n int64) string
- func ToRial(n int64) string
- func ToRialInt(n int) string
- func ToToman(n int64) string
- func ToTomanInt(n int) string
- func TomanToRial(n int64) string
- type ParseError
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Convert ¶
Convert converts an integer to Persian text.
Example ¶
package main
import (
"fmt"
"github.com/pinkorca/num2persian"
)
func main() {
fmt.Println(num2persian.Convert(0))
fmt.Println(num2persian.Convert(21))
fmt.Println(num2persian.Convert(1234))
fmt.Println(num2persian.Convert(-500))
}
Output: صفر بیست و یک هزار و دویست و سی و چهار منفی پانصد
Example (LargeNumbers) ¶
package main
import (
"fmt"
"github.com/pinkorca/num2persian"
)
func main() {
fmt.Println(num2persian.Convert(1000000)) // million
fmt.Println(num2persian.Convert(1000000000)) // billion
fmt.Println(num2persian.Convert(1000000000000)) // trillion
}
Output: یک میلیون یک میلیارد یک تریلیون
func ConvertBigInt ¶
ConvertBigInt converts a big.Int to Persian text.
Example ¶
package main
import (
"fmt"
"math/big"
"github.com/pinkorca/num2persian"
)
func main() {
n := new(big.Int)
n.SetString("1000000000000000000000000000000000", 10) // 10^33 (decillion)
fmt.Println(num2persian.ConvertBigInt(n))
}
Output: یک دسیلیون
func ConvertFloat ¶
ConvertFloat converts a float64 to Persian text with specified decimal precision.
Example ¶
package main
import (
"fmt"
"github.com/pinkorca/num2persian"
)
func main() {
fmt.Println(num2persian.ConvertFloat(12.5, 1))
fmt.Println(num2persian.ConvertFloat(3.14, 2))
fmt.Println(num2persian.ConvertFloat(99.99, 2))
}
Output: دوازده ممیز پنج سه ممیز چهارده نود و نه ممیز نود و نه
func ConvertOrdinal ¶
ConvertOrdinal converts an integer to Persian ordinal text.
Example ¶
package main
import (
"fmt"
"github.com/pinkorca/num2persian"
)
func main() {
fmt.Println(num2persian.ConvertOrdinal(1))
fmt.Println(num2persian.ConvertOrdinal(2))
fmt.Println(num2persian.ConvertOrdinal(3))
fmt.Println(num2persian.ConvertOrdinal(21))
fmt.Println(num2persian.ConvertOrdinal(100))
}
Output: اول دوم سوم بیست و یکم صدم
func ConvertOrdinalInt ¶
ConvertOrdinalInt converts an int to Persian ordinal text.
func ConvertString ¶
ConvertString parses a string and converts it to Persian text.
Example ¶
package main
import (
"fmt"
"github.com/pinkorca/num2persian"
)
func main() {
result, _ := num2persian.ConvertString("1234567")
fmt.Println(result)
result2, _ := num2persian.ConvertString("42.5")
fmt.Println(result2)
}
Output: یک میلیون و دویست و سی و چهار هزار و پانصد و شصت و هفت چهل و دو ممیز پنج
func RialToToman ¶
RialToToman converts Rial to Toman and returns Persian text.
func ToRial ¶
ToRial converts a number to Persian text with "ریال" suffix.
Example ¶
package main
import (
"fmt"
"github.com/pinkorca/num2persian"
)
func main() {
fmt.Println(num2persian.ToRial(10000))
fmt.Println(num2persian.ToRial(15000000))
}
Output: ده هزار ریال پانزده میلیون ریال
func ToToman ¶
ToToman converts a number to Persian text with "تومان" suffix.
Example ¶
package main
import (
"fmt"
"github.com/pinkorca/num2persian"
)
func main() {
fmt.Println(num2persian.ToToman(1000))
fmt.Println(num2persian.ToToman(1500000))
}
Output: هزار تومان یک میلیون و پانصد هزار تومان
func ToTomanInt ¶
ToTomanInt converts an int to Persian text with "تومان" suffix.
func TomanToRial ¶
TomanToRial converts Toman to Rial and returns Persian text.
Types ¶
type ParseError ¶
type ParseError struct {
Input string
}
ParseError is returned when ConvertString fails to parse the input.
func (*ParseError) Error ¶
func (e *ParseError) Error() string