Options
All
  • Public
  • Public/Protected
  • All
Menu

Persian Tools - v1.5.0

Index

Type aliases

BillTypes

BillTypes: "آب" | "برق" | "گاز" | "تلفن ثابت" | "تلفن همراه" | "عوارض شهرداری" | "سازمان مالیات" | "جرایم راهنمایی و رانندگی" | "unknown"

Currency

Currency: "toman" | "rial"

Variables

Const ALL_WORDS

ALL_WORDS: string[] = [...NUMBER_WORDS, ...JOINERS, ...PREFIXES]

Const JOINERS

JOINERS: string[] = ["و", " و "]

Const MAGNITUDE_KEYS

MAGNITUDE_KEYS: string[] = Object.keys(MAGNITUDE)

Const NUMBER_WORDS

NUMBER_WORDS: string[] = [...UNIT_KEYS, ...TEN_KEYS, ...MAGNITUDE_KEYS]

Const NumberToWordsInstance

NumberToWordsInstance: NumberToWords = new NumberToWords()

Const PREFIXES

PREFIXES: string[] = ["منفی", "مثبت"]

Const TEN_KEYS

TEN_KEYS: string[] = Object.keys(TEN)

Const UNIT_KEYS

UNIT_KEYS: string[] = Object.keys(UNITS)

Const WordsToNumberInstance

WordsToNumberInstance: WordsToNumber = new WordsToNumber()

Const arNums

arNums: "٠١٢٣٤٥٦٧٨٩" = "٠١٢٣٤٥٦٧٨٩"

Const codesSkip

codesSkip: Array<ShebaResult> = [{nickname: "central-bank",name: "Central Bank of Iran",persianName: "بانک مرکزی جمهوری اسلامی ایران",code: "010",accountNumberAvailable: false,},{nickname: "sanat-o-madan",name: "Sanat O Madan Bank",persianName: "بانک صنعت و معدن",code: "011",accountNumberAvailable: false,},{nickname: "mellat",name: "Mellat Bank",persianName: "بانک ملت",code: "012",accountNumberAvailable: false,},{nickname: "refah",name: "Refah Bank",persianName: "بانک رفاه کارگران",code: "013",accountNumberAvailable: false,},{nickname: "maskan",name: "Maskan Bank",persianName: "بانک مسکن",code: "014",accountNumberAvailable: false,},{nickname: "sepah",name: "Sepah Bank",persianName: "بانک سپه",code: "015",accountNumberAvailable: false,},{nickname: "keshavarzi",name: "Keshavarzi",persianName: "بانک کشاورزی",code: "016",accountNumberAvailable: false,},{nickname: "melli",name: "Melli",persianName: "بانک ملی ایران",code: "017",accountNumberAvailable: false,},{nickname: "tejarat",name: "Tejarat Bank",persianName: "بانک تجارت",code: "018",accountNumberAvailable: false,},{nickname: "saderat",name: "Saderat Bank",persianName: "بانک صادرات ایران",code: "019",accountNumberAvailable: false,},{nickname: "tosee-saderat",name: "Tose Saderat Bank",persianName: "بانک توسعه صادرات",code: "020",accountNumberAvailable: false,},{nickname: "post",name: "Post Bank",persianName: "پست بانک ایران",code: "021",accountNumberAvailable: false,},{nickname: "toose-taavon",name: "Tosee Taavon Bank",persianName: "بانک توسعه تعاون",code: "022",accountNumberAvailable: false,},{nickname: "tosee",name: "Tosee Bank",persianName: "موسسه اعتباری توسعه",code: "051",accountNumberAvailable: false,},{nickname: "ghavamin",name: "Ghavamin Bank",persianName: "بانک قوامین",code: "052",accountNumberAvailable: false,},{nickname: "karafarin",name: "Karafarin Bank",persianName: "بانک کارآفرین",code: "053",accountNumberAvailable: false,},{nickname: "parsian",name: "Parsian Bank",persianName: "بانک پارسیان",code: "054",accountNumberAvailable: true,process(str: string): ShebaProcess {str = str.substring(14);const formatted = "0" + str.substr(0, 2) + "-0" + str.substr(2, 7) + "-" + str.substr(9, 3);return {normal: str,formatted: formatted,};},},{nickname: "eghtesad-novin",name: "Eghtesad Novin Bank",persianName: "بانک اقتصاد نوین",code: "055",accountNumberAvailable: false,},{nickname: "saman",name: "Saman Bank",persianName: "بانک سامان",code: "056",accountNumberAvailable: false,},{nickname: "pasargad",name: "Pasargad Bank",persianName: "بانک پاسارگاد",code: "057",accountNumberAvailable: true,process(str: string): ShebaProcess {str = str.substring(7);while (str[0] === "0") {str = str.substring(1);}str = str.substr(0, str.length - 2);const formatted =str.substr(0, 3) + "-" + str.substr(3, 3) + "-" + str.substr(6, 8) + "-" + str.substr(14, 1);return {normal: str,formatted: formatted,};},},{nickname: "sarmayeh",name: "Sarmayeh Bank",persianName: "بانک سرمایه",code: "058",accountNumberAvailable: false,},{nickname: "sina",name: "Sina Bank",persianName: "بانک سینا",code: "059",accountNumberAvailable: false,},{nickname: "mehr-iran",name: "Mehr Iran Bank",persianName: "بانک مهر ایران",code: "060",accountNumberAvailable: false,},{nickname: "shahr",name: "City Bank",persianName: "بانک شهر",code: "061",accountNumberAvailable: true,process(str: string): ShebaProcess {str = str.substring(7);while (str[0] === "0") {str = str.substring(1);}return {normal: str,formatted: str,};},},{nickname: "ayandeh",name: "Ayandeh Bank",persianName: "بانک آینده",code: "062",accountNumberAvailable: false,},{nickname: "ansar",name: "Ansar Bank",persianName: "بانک انصار",code: "063",accountNumberAvailable: false,},{nickname: "gardeshgari",name: "Gardeshgari Bank",persianName: "بانک گردشگری",code: "064",accountNumberAvailable: false,},{nickname: "hekmat-iranian",name: "Hekmat Iranian Bank",persianName: "بانک حکمت ایرانیان",code: "065",accountNumberAvailable: false,},{nickname: "dey",name: "Dey Bank",persianName: "بانک دی",code: "066",accountNumberAvailable: false,},{nickname: "iran-zamin",name: "Iran Zamin Bank",persianName: "بانک ایران زمین",code: "069",accountNumberAvailable: false,},{nickname: "resalat",name: "Resalat Bank",persianName: "بانک قرض الحسنه رسالت",code: "070",accountNumberAvailable: false,},{nickname: "kosar",name: "Kosar Credit Institute",persianName: "موسسه اعتباری کوثر",code: "073",accountNumberAvailable: false,},{nickname: "melal",name: "Melal Credit Institute",persianName: "موسسه اعتباری ملل",code: "075",accountNumberAvailable: false,},{nickname: "middle-east-bank",name: "Middle East Bank",persianName: "بانک خاورمیانه",code: "078",accountNumberAvailable: false,},{nickname: "noor-bank",name: "Noor Credit Institution",persianName: "موسسه اعتباری نور",code: "080",accountNumberAvailable: false,},{nickname: "mehr-eqtesad",name: "Mehr Eqtesad Bank",persianName: "بانک مهر اقتصاد",code: "079",accountNumberAvailable: false,},{nickname: "mehr-iran",name: "Mehr Iran Bank",persianName: "بانک مهر ایران",code: "090",accountNumberAvailable: false,},{nickname: "iran-venezuela",name: "Iran and Venezuela Bank",persianName: "بانک ایران و ونزوئلا",code: "095",accountNumberAvailable: false,},]

Const faNums

faNums: "۰۱۲۳۴۵۶۷۸۹" = "۰۱۲۳۴۵۶۷۸۹"

Const mobileRegex

mobileRegex: RegExp = /^(?:[+|0{2}]?98)?(?:0)?(\d{3})+(\d{3})+(\d{4})$/

Iranian Mobile Number regex This regex support these models:

  1. 00989123456789
  2. +989123456789
  3. 989123456789
  4. 09123456789
  5. 9123456789
author

Ali.Torki

Const numberToWord

numberToWord: INumberToWord

Const prefixes

prefixes: string[] = [...Object.keys(MCI),...Object.keys(Taliya),...Object.keys(RightTel),...Object.keys(Irancell),...Object.keys(ShatelMobile),]

Const shebaHashTable

shebaHashTable: ShebaHashTable

Functions

PhoneNumberValidator

  • PhoneNumberValidator(mobile: string): boolean

SortText

  • SortText(str: string): string | string[] | undefined
  • SortText

    Description: Takes a piece of text in Persian which contains several lines (separated by the newline character), and sorts the lines alphabetically, with respect to their first character.

    Parameters

    • str: string

    Returns string | string[] | undefined

Const URLfix

  • URLfix(value?: undefined | string): string | undefined
  • Used for fix Persian characters in URL

    method

    URLfix

    Parameters

    • Optional value: undefined | string

    Returns string | undefined

    A string of fixed URL

Const addCommas

  • addCommas(number?: number | string): string | undefined
  • Add Commas to numbers

    method

    addCommas

    Parameters

    • Optional number: number | string

    Returns string | undefined

    A string of separated numbers by commas, eg: 30,000

Const addOrdinalSuffix

  • addOrdinalSuffix(number?: undefined | string): string | undefined
  • Add Ordinal suffix to numbers

    method

    addOrdinalSuffix

    Parameters

    • Optional number: undefined | string

      Number, eg: "300000"

    Returns string | undefined

    A string of ordinated number

digitsArToEn

  • digitsArToEn(str?: undefined | string): string | undefined
  • digitsArToEn

    Description: Takes a string that contains digits, and replaces all Arabic digits with the corresponding English digits

    Parameters

    • Optional str: undefined | string

    Returns string | undefined

digitsArToFa

  • digitsArToFa(str?: string | number): string | undefined
  • digitsArToFa

    Description: Takes a string that contains digits, and replaces all Arabic digits with the corresponding Persian digits

    Parameters

    • Optional str: string | number

    Returns string | undefined

digitsEnToFa

  • digitsEnToFa(str?: number | string): string | undefined
  • digitsEnToFa

    Description: Takes a string made of English digits only, and returns a string that represents the same number but with Persian digits

    Parameters

    • Optional str: number | string

    Returns string | undefined

digitsFaToEn

  • digitsFaToEn(str?: string | string): string | undefined
  • digitsFaToEn

    Description: Takes a string made of English digits only, and returns a string that represents the same number but with Persian digits

    Parameters

    • Optional str: string | string

    Returns string | undefined

extractCardNumber

Const fuzzy

  • fuzzy(words: string, dataset?: Array<string>): string | undefined

getBankNameFromCardNumber

  • getBankNameFromCardNumber(digits?: number | string): string | null | undefined
  • Find Bank's name by card number

    method

    getBankNameFromCardNumber

    Parameters

    • Optional digits: number | string

      Card number

    Returns string | null | undefined

    string | null | undefined

getPhonePrefix

  • getPhonePrefix(mobile: string): string

getPlaceByIranNationalId

  • getPlaceByIranNationalId(nationalId?: undefined | string): IPlaceByNationalId | null | undefined
  • Get Province and City name by Iranian National-Id

    method

    getPlaceByIranNationalId

    Parameters

    • Optional nationalId: undefined | string

      string of national id - like this: 1111111111

    Returns IPlaceByNationalId | null | undefined

    If nationalId is valid, function returns an object of details, but if nationalId is invalid, return an error message

Const halfSpace

  • halfSpace(str: string): string | undefined
  • Replace halfSpace in string(Zero-width non-joiner)

    method

    halfSpace

    Parameters

    • str: string

    Returns string | undefined

    clean entered persian string

Const isPersian

  • isPersian(characters: string): boolean | undefined
  • Check if string included of just persian characters

    method

    isPersian

    Parameters

    • characters: string

      string

    Returns boolean | undefined

    Return true if the entered string includes persian characters

phoneNumberDetail

  • Find information such as Province, type and model of mobile number. This function is related to the {@link phoneNumberValidator} function to detect that the mobile number is valid or not If the Mobile number was valid, then the OperatorModel will be resolved if it was existed. To get more information about phone numbers operators' details, referer to Wikipedia

    example

    phoneNumberDetail("9123456789")

    Parameters

    • mobile: string

    Returns OperatorModel | null

    OperatorModel | null

Const removeCommas

  • removeCommas(number?: string | number): number | undefined
  • Remove all commas in string

    Parameters

    • Optional number: string | number

    Returns number | undefined

    A number which includes any commas

Const removeOrdinalSuffix

  • removeOrdinalSuffix(word: string): string | undefined
  • description

    Remove Ordinal suffix in words

    function

    removeOrdinalSuffix

    example

    removeOrdinalSuffix("سه هزارم") // سه هزار removeOrdinalSuffix("سه هزارمین") // سه هزار

    Parameters

    • word: string

      String that includes ordinal suffix

    Returns string | undefined

    A string of words that not includes Ordinal strings

Const replaceArray

toPersianChars

  • toPersianChars(str: string): string | undefined
  • toPersianChars

    Description: Replaces all instances of ي and ك withی and ک, respectively. It should not make any ch anges to Arabic text surrounded by appropriate templates.

    method

    toPersianChars

    Parameters

    • str: string

    Returns string | undefined

    cleaned characters of arabic characters

Const trim

  • trim(str: string): string

verifyCardNumber

  • verifyCardNumber(digits: number): boolean | undefined
  • Verify Iranian Bank's card number which is valid or not

    method

    verifyCardNumber

    Parameters

    • digits: number

    Returns boolean | undefined

    boolean

verifyIranianNationalId

  • verifyIranianNationalId(nationalId?: string | number): boolean | null | undefined
  • Check National-id validation

    method

    verifyIranianNationalId

    Parameters

    • Optional nationalId: string | number

    Returns boolean | null | undefined

    [valid or no]

Object literals

Const Irancell

Irancell: object

901

901: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

902

902: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

903

903: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

905

905: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

930

930: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

933

933: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

935

935: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

936

936: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

937

937: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

938

938: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

939

939: { base: string; operator: string; province: never[]; type: string[] } = IrancellModel

Type declaration

  • base: string
  • operator: string
  • province: never[]
  • type: string[]

904

904: object

base

base: string = "کشوری"

model

model: string = "سیم‌کارت کودک"

operator

operator: string = operatorsMap.Irancell

province

province: never[] = []

type

type: string[] = ["credit"]

941

941: object

base

base: string = "کشوری"

model

model: string = "TD-LTE"

operator

operator: string = operatorsMap.Irancell

province

province: never[] = []

type

type: string[] = ["credit"]

Const IrancellModel

IrancellModel: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.Irancell

province

province: never[] = []

type

type: string[] = ["permanent", "credit"]

Const MAGNITUDE

MAGNITUDE: object

بیلیون

بیلیون: number = 1000000000

تریلیون

تریلیون: number = 1000000000000

میلیارد

میلیارد: number = 1000000000

میلیون

میلیون: number = 1000000

هزار

هزار: number = 1000

Const MCI

MCI: object

910

910: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.MCI

province

province: never[] = []

type

type: string[] = ["permanent", "credit"]

911

911: object

base

base: string = "مازندران"

operator

operator: string = operatorsMap.MCI

province

province: string[] = ["گلستان", "گیلان"]

type

type: string[] = ["permanent", "credit"]

912

912: object

base

base: string = "تهران"

operator

operator: string = operatorsMap.MCI

province

province: string[] = ["البرز", "زنجان", "سمنان", "قزوین", "قم", "برخی از شهرستان های استان مرکزی"]

type

type: string[] = ["permanent"]

913

913: object

base

base: string = "اصفهان"

operator

operator: string = operatorsMap.MCI

province

province: string[] = ["یزد", "چهارمحال و بختیاری", "کرمان"]

type

type: string[] = ["permanent", "credit"]

914

914: object

base

base: string = "آذربایجان غربی"

operator

operator: string = operatorsMap.MCI

province

province: string[] = ["آذربایجان شرقی", "اردبیل", "اصفهان"]

type

type: string[] = ["permanent", "credit"]

915

915: object

base

base: string = "خراسان رضوی"

operator

operator: string = operatorsMap.MCI

province

province: string[] = ["خراسان شمالی", "خراسان جنوبی", "سیستان و بلوچستان"]

type

type: string[] = ["permanent", "credit"]

916

916: object

base

base: string = "خوزستان"

operator

operator: string = operatorsMap.MCI

province

province: string[] = ["لرستان", "فارس", "اصفهان"]

type

type: string[] = ["permanent", "credit"]

917

917: object

base

base: string = "فارس"

operator

operator: string = operatorsMap.MCI

province

province: string[] = ["بوشهر", "کهگیلویه و بویر احمد", "هرمزگان"]

type

type: string[] = ["permanent", "credit"]

918

918: object

base

base: string = "کرمانشاه"

operator

operator: string = operatorsMap.MCI

province

province: string[] = ["کردستان", "ایلام", "همدان"]

type

type: string[] = ["permanent", "credit"]

919

919: object

base

base: string = "تهران"

operator

operator: string = operatorsMap.MCI

province

province: string[] = ["البرز", "سمنان", "قم", "قزوین", "زنجان"]

type

type: string[] = ["credit"]

990

990: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.MCI

province

province: never[] = []

type

type: string[] = ["credit"]

991

991: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.MCI

province

province: never[] = []

type

type: string[] = ["permanent", "credit"]

992

992: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.MCI

province

province: never[] = []

type

type: string[] = ["credit"]

993

993: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.MCI

province

province: never[] = []

type

type: string[] = ["credit"]

994

994: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.MCI

province

province: never[] = []

type

type: string[] = ["credit"]

Const RightTel

RightTel: object

920

920: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.RightTel

province

province: never[] = []

type

type: string[] = ["permanent"]

921

921: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.RightTel

province

province: never[] = []

type

type: string[] = ["credit"]

922

922: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.RightTel

province

province: never[] = []

type

type: string[] = ["credit"]

Const ShatelMobile

ShatelMobile: object

998

998: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.shatelMobile

province

province: never[] = []

type

type: string[] = ["credit"]

Const TEN

TEN: object

دویست

دویست: number = 200

سیصد

سیصد: number = 300

ششصد

ششصد: number = 600

صد

صد: number = 100

نهصد

نهصد: number = 900

هشتصد

هشتصد: number = 800

هفتصد

هفتصد: number = 700

پانصد

پانصد: number = 500

چهارصد

چهارصد: number = 400

یکصد

یکصد: number = 100

Const TOKEN_TYPE

TOKEN_TYPE: object

DECIMAL

DECIMAL: number = 3

HUNDRED

HUNDRED: number = 4

MAGNITUDE

MAGNITUDE: number = 2

TEN

TEN: number = 1

UNIT

UNIT: number = 0

Const TYPO_LIST

TYPO_LIST: object

شش صد

شش صد: string = "ششصد"

شیش صد

شیش صد: string = "ششصد"

نه صد

نه صد: string = "نهصد"

هشت صد

هشت صد: string = "هشتصد"

هفت صد

هفت صد: string = "هفتصد"

Const Taliya

Taliya: object

932

932: object

base

base: string = "کشوری"

operator

operator: string = operatorsMap.Taliya

province

province: never[] = []

type

type: string[] = ["credit"]

Const UNITS

UNITS: object

بیست

بیست: number = 20

ده

ده: number = 10

دو

دو: number = 2

دوازده

دوازده: number = 12

سه

سه: number = 3

سی

سی: number = 30

سیزده

سیزده: number = 13

شانزده

شانزده: number = 16

شش

شش: number = 6

شصت

شصت: number = 60

شیش

شیش: number = 6

صفر

صفر: number = 0

نه

نه: number = 9

نود

نود: number = 90

نوزده

نوزده: number = 19

هجده

هجده: number = 18

هشت

هشت: number = 8

هشتاد

هشتاد: number = 80

هفت

هفت: number = 7

هفتاد

هفتاد: number = 70

هفده

هفده: number = 17

پانزده

پانزده: number = 15

پنج

پنج: number = 5

پنجاه

پنجاه: number = 50

چهار

چهار: number = 4

چهارده

چهارده: number = 14

چهل

چهل: number = 40

یازده

یازده: number = 11

یک

یک: number = 1

Const billTypes

billTypes: object

1

1: "آب" = "آب"

2

2: "برق" = "برق"

3

3: "گاز" = "گاز"

4

4: "تلفن ثابت" = "تلفن ثابت"

5

5: "تلفن همراه" = "تلفن همراه"

6

6: "عوارض شهرداری" = "عوارض شهرداری"

8

8: "سازمان مالیات" = "سازمان مالیات"

9

9: "جرایم راهنمایی و رانندگی" = "جرایم راهنمایی و رانندگی"

Const config

config: object

scale

scale: string[] = ["", "هزار", "میلیون", "میلیارد"]

Const operators

operators: object

Const operatorsMap

operatorsMap: object

Irancell

Irancell: string = "ایرانسل"

MCI

MCI: string = "همراه اول"

RightTel

RightTel: string = "رایتل"

Taliya

Taliya: string = "تالیا"

shatelMobile

shatelMobile: string = "شاتل موبایل"

Generated using TypeDoc