Update persian number file.
This commit is contained in:
parent
0a643930b1
commit
8e16921f27
|
@ -1,380 +1,384 @@
|
||||||
const oneDigit = [
|
export default defineNuxtPlugin(() => {
|
||||||
"صفر",
|
console.info("persina number plugin");
|
||||||
"یک",
|
});
|
||||||
"دو",
|
|
||||||
"سه",
|
|
||||||
"چهار",
|
|
||||||
"پنج",
|
|
||||||
"شش",
|
|
||||||
"هفت",
|
|
||||||
"هشت",
|
|
||||||
"نه",
|
|
||||||
];
|
|
||||||
const twoDigits = {
|
|
||||||
10: "ده",
|
|
||||||
11: "یازده",
|
|
||||||
12: "دوازده",
|
|
||||||
13: "سیزده",
|
|
||||||
14: "چهارده",
|
|
||||||
15: "پانزده",
|
|
||||||
16: "شانزده",
|
|
||||||
17: "هفده",
|
|
||||||
18: "هجده",
|
|
||||||
19: "نوزده",
|
|
||||||
20: "بیست",
|
|
||||||
30: "سی",
|
|
||||||
40: "چهل",
|
|
||||||
50: "پنجاه",
|
|
||||||
60: "شصت",
|
|
||||||
70: "هفتاد",
|
|
||||||
80: "هشتاد",
|
|
||||||
90: "نود",
|
|
||||||
};
|
|
||||||
const threeDigits = {
|
|
||||||
100: "صد",
|
|
||||||
200: "دویست",
|
|
||||||
300: "سیصد",
|
|
||||||
400: "چهارصد",
|
|
||||||
500: "پانصد",
|
|
||||||
600: "شش صد",
|
|
||||||
700: "هفت صد",
|
|
||||||
800: "هشت صد",
|
|
||||||
900: "نه صد",
|
|
||||||
};
|
|
||||||
|
|
||||||
const types = ["تلیارد", "میلیارد", "میلیون", "هزار", ""];
|
// const oneDigit = [
|
||||||
const decimalTypes = ["دهم", "صدم", "هزارم", "ده هزارم"];
|
// "صفر",
|
||||||
let numbers = [];
|
// "یک",
|
||||||
let decimals = [];
|
// "دو",
|
||||||
|
// "سه",
|
||||||
|
// "چهار",
|
||||||
|
// "پنج",
|
||||||
|
// "شش",
|
||||||
|
// "هفت",
|
||||||
|
// "هشت",
|
||||||
|
// "نه",
|
||||||
|
// ];
|
||||||
|
// const twoDigits = {
|
||||||
|
// 10: "ده",
|
||||||
|
// 11: "یازده",
|
||||||
|
// 12: "دوازده",
|
||||||
|
// 13: "سیزده",
|
||||||
|
// 14: "چهارده",
|
||||||
|
// 15: "پانزده",
|
||||||
|
// 16: "شانزده",
|
||||||
|
// 17: "هفده",
|
||||||
|
// 18: "هجده",
|
||||||
|
// 19: "نوزده",
|
||||||
|
// 20: "بیست",
|
||||||
|
// 30: "سی",
|
||||||
|
// 40: "چهل",
|
||||||
|
// 50: "پنجاه",
|
||||||
|
// 60: "شصت",
|
||||||
|
// 70: "هفتاد",
|
||||||
|
// 80: "هشتاد",
|
||||||
|
// 90: "نود",
|
||||||
|
// };
|
||||||
|
// const threeDigits = {
|
||||||
|
// 100: "صد",
|
||||||
|
// 200: "دویست",
|
||||||
|
// 300: "سیصد",
|
||||||
|
// 400: "چهارصد",
|
||||||
|
// 500: "پانصد",
|
||||||
|
// 600: "شش صد",
|
||||||
|
// 700: "هفت صد",
|
||||||
|
// 800: "هشت صد",
|
||||||
|
// 900: "نه صد",
|
||||||
|
// };
|
||||||
|
|
||||||
//Convert Number To Words
|
// const types = ["تلیارد", "میلیارد", "میلیون", "هزار", ""];
|
||||||
const convert = (number) => {
|
// const decimalTypes = ["دهم", "صدم", "هزارم", "ده هزارم"];
|
||||||
let negative = "";
|
// let numbers = [];
|
||||||
let decNumber = "";
|
// let decimals = [];
|
||||||
let decimal = "";
|
|
||||||
let percent = "";
|
|
||||||
|
|
||||||
if (isPercent(number)) {
|
// //Convert Number To Words
|
||||||
number = number.replace("%", "");
|
// const convert = (number) => {
|
||||||
percent = " درصد";
|
// let negative = "";
|
||||||
}
|
// let decNumber = "";
|
||||||
|
// let decimal = "";
|
||||||
|
// let percent = "";
|
||||||
|
|
||||||
number = getString(number);
|
// if (isPercent(number)) {
|
||||||
if (number == "") return "";
|
// number = number.replace("%", "");
|
||||||
sliceNumber(number);
|
// percent = " درصد";
|
||||||
if (isNegative(number)) negative = "منفی ";
|
// }
|
||||||
number = number.replace("-", "");
|
|
||||||
|
|
||||||
if (isDecimal(number)) {
|
// number = getString(number);
|
||||||
let index = number.indexOf(".");
|
// if (number == "") return "";
|
||||||
let decNumberStr = "";
|
// sliceNumber(number);
|
||||||
|
// if (isNegative(number)) negative = "منفی ";
|
||||||
|
// number = number.replace("-", "");
|
||||||
|
|
||||||
decNumber = number.substr(index + 1, number.length);
|
// if (isDecimal(number)) {
|
||||||
number = number.substr(0, index);
|
// let index = number.indexOf(".");
|
||||||
decNumberStr = parseInt(decNumber).toString();
|
// let decNumberStr = "";
|
||||||
|
|
||||||
if (decNumberStr.length === 1 && decNumberStr != "0") {
|
// decNumber = number.substr(index + 1, number.length);
|
||||||
decimal += oneDigit[decNumberStr] + " ";
|
// number = number.substr(0, index);
|
||||||
decimal += decimalTypes[decNumber.length - 1];
|
// decNumberStr = parseInt(decNumber).toString();
|
||||||
} else {
|
|
||||||
decimal = calculateDigits(decimals);
|
|
||||||
decimal += " " + decimalTypes[decNumber.length - 1];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (number.length === 1) {
|
// if (decNumberStr.length === 1 && decNumberStr != "0") {
|
||||||
if (!decimal) {
|
// decimal += oneDigit[decNumberStr] + " ";
|
||||||
return negative + oneDigit[number] + percent;
|
// decimal += decimalTypes[decNumber.length - 1];
|
||||||
}
|
// } else {
|
||||||
|
// decimal = calculateDigits(decimals);
|
||||||
|
// decimal += " " + decimalTypes[decNumber.length - 1];
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
if (number == "0") {
|
// if (number.length === 1) {
|
||||||
return negative + decimal + percent;
|
// if (!decimal) {
|
||||||
}
|
// return negative + oneDigit[number] + percent;
|
||||||
|
// }
|
||||||
|
|
||||||
return negative + oneDigit[number] + " ممیز " + decimal + percent;
|
// if (number == "0") {
|
||||||
}
|
// return negative + decimal + percent;
|
||||||
|
// }
|
||||||
|
|
||||||
if (!decimal) {
|
// return negative + oneDigit[number] + " ممیز " + decimal + percent;
|
||||||
return negative + calculateDigits(numbers) + percent;
|
// }
|
||||||
}
|
|
||||||
|
|
||||||
return negative + calculateDigits(numbers) + " ممیز " + decimal + percent;
|
// if (!decimal) {
|
||||||
};
|
// return negative + calculateDigits(numbers) + percent;
|
||||||
|
// }
|
||||||
|
|
||||||
//split number 3 by 3 with a separator (123456789.3025=>123,456,789.3,025) Do Not Give It Persian Numbers
|
// return negative + calculateDigits(numbers) + " ممیز " + decimal + percent;
|
||||||
const sliceNumber = (number, separator = ",") => {
|
// };
|
||||||
let percent = "";
|
|
||||||
let neg = "";
|
|
||||||
let dNum = "";
|
|
||||||
let n = "";
|
|
||||||
let d = "";
|
|
||||||
|
|
||||||
if (isPercent(number)) {
|
// //split number 3 by 3 with a separator (123456789.3025=>123,456,789.3,025) Do Not Give It Persian Numbers
|
||||||
number = number.replace("%", "");
|
// const sliceNumber = (number, separator = ",") => {
|
||||||
percent = "%";
|
// let percent = "";
|
||||||
}
|
// let neg = "";
|
||||||
|
// let dNum = "";
|
||||||
|
// let n = "";
|
||||||
|
// let d = "";
|
||||||
|
|
||||||
number = getString(number);
|
// if (isPercent(number)) {
|
||||||
|
// number = number.replace("%", "");
|
||||||
|
// percent = "%";
|
||||||
|
// }
|
||||||
|
|
||||||
if (number == "") return "";
|
// number = getString(number);
|
||||||
if (isNegative(number)) neg = "-";
|
|
||||||
|
|
||||||
number = number.replace("-", "");
|
// if (number == "") return "";
|
||||||
|
// if (isNegative(number)) neg = "-";
|
||||||
|
|
||||||
if (isDecimal(number)) {
|
// number = number.replace("-", "");
|
||||||
let index = number.indexOf(".");
|
|
||||||
dNum = number.substr(index + 1, number.length);
|
|
||||||
number = number.substr(0, index);
|
|
||||||
}
|
|
||||||
|
|
||||||
n = putSeparator(number, separator);
|
// if (isDecimal(number)) {
|
||||||
numbers = n.split(separator);
|
// let index = number.indexOf(".");
|
||||||
|
// dNum = number.substr(index + 1, number.length);
|
||||||
|
// number = number.substr(0, index);
|
||||||
|
// }
|
||||||
|
|
||||||
if (!dNum) return neg + n + percent;
|
// n = putSeparator(number, separator);
|
||||||
|
// numbers = n.split(separator);
|
||||||
|
|
||||||
d = putSeparator(dNum, separator);
|
// if (!dNum) return neg + n + percent;
|
||||||
decimals = d.split(separator);
|
|
||||||
|
|
||||||
return neg + n + "." + d + percent;
|
// d = putSeparator(dNum, separator);
|
||||||
};
|
// decimals = d.split(separator);
|
||||||
|
|
||||||
//Puts a separator between the chunks of the given numString.
|
// return neg + n + "." + d + percent;
|
||||||
const putSeparator = (numString, separator = ",") => {
|
// };
|
||||||
if (typeof numString !== "string") return "";
|
|
||||||
if (numString.length < 4) return numString;
|
|
||||||
|
|
||||||
let result = "";
|
// //Puts a separator between the chunks of the given numString.
|
||||||
for (let i = numString.length - 1, counter = 0; i >= 0; i--) {
|
// const putSeparator = (numString, separator = ",") => {
|
||||||
if (counter == 3) {
|
// if (typeof numString !== "string") return "";
|
||||||
result += separator;
|
// if (numString.length < 4) return numString;
|
||||||
counter = 0;
|
|
||||||
}
|
|
||||||
result += numString[i];
|
|
||||||
counter++;
|
|
||||||
}
|
|
||||||
|
|
||||||
result = result.split("").reverse().join("");
|
// let result = "";
|
||||||
return result;
|
// for (let i = numString.length - 1, counter = 0; i >= 0; i--) {
|
||||||
};
|
// if (counter == 3) {
|
||||||
|
// result += separator;
|
||||||
|
// counter = 0;
|
||||||
|
// }
|
||||||
|
// result += numString[i];
|
||||||
|
// counter++;
|
||||||
|
// }
|
||||||
|
|
||||||
//Processing on Digits of A Number
|
// result = result.split("").reverse().join("");
|
||||||
const calculateDigits = (arrNum) => {
|
// return result;
|
||||||
let result = "";
|
// };
|
||||||
for (let i = 0; i < arrNum.length; i++) {
|
|
||||||
let parsedNum = parseInt(arrNum[i]);
|
|
||||||
let number = parsedNum;
|
|
||||||
let sadgan = Math.floor(number / 100) * 100;
|
|
||||||
number = number % 100;
|
|
||||||
let dahgan = Math.floor(number / 10) * 10;
|
|
||||||
let yekan = number % 10;
|
|
||||||
result += i !== 0 && parsedNum ? " و " : "";
|
|
||||||
|
|
||||||
result +=
|
// //Processing on Digits of A Number
|
||||||
getPersian(sadgan, dahgan, yekan, i, arrNum) + " " + getType(i, arrNum);
|
// const calculateDigits = (arrNum) => {
|
||||||
}
|
// let result = "";
|
||||||
|
// for (let i = 0; i < arrNum.length; i++) {
|
||||||
|
// let parsedNum = parseInt(arrNum[i]);
|
||||||
|
// let number = parsedNum;
|
||||||
|
// let sadgan = Math.floor(number / 100) * 100;
|
||||||
|
// number = number % 100;
|
||||||
|
// let dahgan = Math.floor(number / 10) * 10;
|
||||||
|
// let yekan = number % 10;
|
||||||
|
// result += i !== 0 && parsedNum ? " و " : "";
|
||||||
|
|
||||||
return result.trim();
|
// result +=
|
||||||
};
|
// getPersian(sadgan, dahgan, yekan, i, arrNum) + " " + getType(i, arrNum);
|
||||||
|
// }
|
||||||
|
|
||||||
//Main Process That Turn a Number Into a String(122=>100+20+2)
|
// return result.trim();
|
||||||
const getPersian = (sadgan, dahgan, yekan, index, numbers) => {
|
// };
|
||||||
let flag = false;
|
|
||||||
let result = "";
|
|
||||||
let dahganPlusYekan = dahgan + yekan;
|
|
||||||
|
|
||||||
if (threeDigits[sadgan]) {
|
// //Main Process That Turn a Number Into a String(122=>100+20+2)
|
||||||
result +=
|
// const getPersian = (sadgan, dahgan, yekan, index, numbers) => {
|
||||||
yekan > 0 || dahgan > 0
|
// let flag = false;
|
||||||
? threeDigits[sadgan] + " و "
|
// let result = "";
|
||||||
: threeDigits[sadgan];
|
// let dahganPlusYekan = dahgan + yekan;
|
||||||
}
|
|
||||||
|
|
||||||
if (twoDigits[dahganPlusYekan]) {
|
// if (threeDigits[sadgan]) {
|
||||||
result += twoDigits[dahganPlusYekan] + " ";
|
// result +=
|
||||||
return result;
|
// yekan > 0 || dahgan > 0
|
||||||
}
|
// ? threeDigits[sadgan] + " و "
|
||||||
|
// : threeDigits[sadgan];
|
||||||
|
// }
|
||||||
|
|
||||||
if (twoDigits[dahgan]) {
|
// if (twoDigits[dahganPlusYekan]) {
|
||||||
result += twoDigits[dahgan] + " و ";
|
// result += twoDigits[dahganPlusYekan] + " ";
|
||||||
}
|
// return result;
|
||||||
|
// }
|
||||||
|
|
||||||
if (
|
// if (twoDigits[dahgan]) {
|
||||||
numbers.length === 2 &&
|
// result += twoDigits[dahgan] + " و ";
|
||||||
index === 0 &&
|
// }
|
||||||
yekan === 1 &&
|
|
||||||
dahgan === 0 &&
|
|
||||||
sadgan === 0
|
|
||||||
) {
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (
|
// if (
|
||||||
numbers.length > 2 &&
|
// numbers.length === 2 &&
|
||||||
index === numbers.length - 2 &&
|
// index === 0 &&
|
||||||
yekan === 1 &&
|
// yekan === 1 &&
|
||||||
dahgan === 0 &&
|
// dahgan === 0 &&
|
||||||
sadgan === 0
|
// sadgan === 0
|
||||||
) {
|
// ) {
|
||||||
return result;
|
// return result;
|
||||||
}
|
// }
|
||||||
|
|
||||||
if (yekan > 0) result += oneDigit[yekan] + " ";
|
// if (
|
||||||
|
// numbers.length > 2 &&
|
||||||
|
// index === numbers.length - 2 &&
|
||||||
|
// yekan === 1 &&
|
||||||
|
// dahgan === 0 &&
|
||||||
|
// sadgan === 0
|
||||||
|
// ) {
|
||||||
|
// return result;
|
||||||
|
// }
|
||||||
|
|
||||||
return result;
|
// if (yekan > 0) result += oneDigit[yekan] + " ";
|
||||||
};
|
|
||||||
|
|
||||||
//getting The Type Of Each Number (Billion, Million,...)
|
// return result;
|
||||||
const getType = (i, numbers) => {
|
// };
|
||||||
let parsedNum = parseInt(numbers[i]);
|
|
||||||
if (isNaN(parsedNum)) return "";
|
|
||||||
if (!parsedNum) return "";
|
|
||||||
let length = numbers.length - i;
|
|
||||||
let index = types.length - length;
|
|
||||||
return types[index];
|
|
||||||
};
|
|
||||||
|
|
||||||
//Calculate if number:String is Negative Or Not
|
// //getting The Type Of Each Number (Billion, Million,...)
|
||||||
const isNegative = (number) => {
|
// const getType = (i, numbers) => {
|
||||||
number = getString(number);
|
// let parsedNum = parseInt(numbers[i]);
|
||||||
if (!number) return false;
|
// if (isNaN(parsedNum)) return "";
|
||||||
if (number[0] != "-") return false;
|
// if (!parsedNum) return "";
|
||||||
number = number.replace("-", "");
|
// let length = numbers.length - i;
|
||||||
return number != "0";
|
// let index = types.length - length;
|
||||||
};
|
// return types[index];
|
||||||
|
// };
|
||||||
|
|
||||||
//Calculate if number:String has '%' as Percent
|
// //Calculate if number:String is Negative Or Not
|
||||||
const isPercent = (string) => {
|
// const isNegative = (number) => {
|
||||||
if (typeof string !== "string") return false;
|
// number = getString(number);
|
||||||
let index = string.indexOf("%");
|
// if (!number) return false;
|
||||||
let lIndex = string.lastIndexOf("%");
|
// if (number[0] != "-") return false;
|
||||||
if (index != lIndex) return false;
|
// number = number.replace("-", "");
|
||||||
return index > 0;
|
// return number != "0";
|
||||||
};
|
// };
|
||||||
|
|
||||||
//is number:String:Number is a Valid Number? if type is Number turn it to String And Return it
|
// //Calculate if number:String has '%' as Percent
|
||||||
const getString = (number) => {
|
// const isPercent = (string) => {
|
||||||
if (number === undefined) return "";
|
// if (typeof string !== "string") return false;
|
||||||
if (number === null) return "";
|
// let index = string.indexOf("%");
|
||||||
if (isNaN(number)) return "";
|
// let lIndex = string.lastIndexOf("%");
|
||||||
if (typeof number === "number") return number.toString();
|
// if (index != lIndex) return false;
|
||||||
return number.trim();
|
// return index > 0;
|
||||||
};
|
// };
|
||||||
|
|
||||||
//Calculate if number:String has Decimal Point Or Not
|
// //is number:String:Number is a Valid Number? if type is Number turn it to String And Return it
|
||||||
const isDecimal = (number) => {
|
// const getString = (number) => {
|
||||||
number = getString(number);
|
// if (number === undefined) return "";
|
||||||
if (number == "") return false;
|
// if (number === null) return "";
|
||||||
let index = number.indexOf(".");
|
// if (isNaN(number)) return "";
|
||||||
let lIndex = number.lastIndexOf(".");
|
// if (typeof number === "number") return number.toString();
|
||||||
if (index != lIndex) return false;
|
// return number.trim();
|
||||||
return index > 0;
|
// };
|
||||||
};
|
|
||||||
//Convert English Numbers To Persian Numbers
|
|
||||||
const convertEnToPe = (number) => {
|
|
||||||
if (number == null || number == undefined) return "";
|
|
||||||
if (typeof number == "number") number = number.toString();
|
|
||||||
let res = "";
|
|
||||||
for (let i = 0; i < number.length; i++) {
|
|
||||||
switch (number[i]) {
|
|
||||||
case "\u0030":
|
|
||||||
res += "\u06F0";
|
|
||||||
break;
|
|
||||||
case "\u0031":
|
|
||||||
res += "\u06F1";
|
|
||||||
break;
|
|
||||||
case "\u0032":
|
|
||||||
res += "\u06F2";
|
|
||||||
break;
|
|
||||||
case "\u0033":
|
|
||||||
res += "\u06F3";
|
|
||||||
break;
|
|
||||||
case "\u0034":
|
|
||||||
res += "\u06F4";
|
|
||||||
break;
|
|
||||||
case "\u0035":
|
|
||||||
res += "\u06F5";
|
|
||||||
break;
|
|
||||||
case "\u0036":
|
|
||||||
res += "\u06F6";
|
|
||||||
break;
|
|
||||||
case "\u0037":
|
|
||||||
res += "\u06F7";
|
|
||||||
break;
|
|
||||||
case "\u0038":
|
|
||||||
res += "\u06F8";
|
|
||||||
break;
|
|
||||||
case "\u0039":
|
|
||||||
res += "\u06F9";
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
res += number[i];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return res;
|
|
||||||
};
|
|
||||||
//Convert Persian Numbers To English Numbers
|
|
||||||
const convertPeToEn = (number) => {
|
|
||||||
if (number == null || number == undefined) return "";
|
|
||||||
let res = "";
|
|
||||||
for (let i = 0; i < number.length; i++) {
|
|
||||||
switch (number[i]) {
|
|
||||||
case "\u06F0":
|
|
||||||
res += "\u0030";
|
|
||||||
break;
|
|
||||||
case "\u06F1":
|
|
||||||
res += "\u0031";
|
|
||||||
break;
|
|
||||||
case "\u06F2":
|
|
||||||
res += "\u0032";
|
|
||||||
break;
|
|
||||||
case "\u06F3":
|
|
||||||
res += "\u0033";
|
|
||||||
break;
|
|
||||||
case "\u06F4":
|
|
||||||
res += "\u0034";
|
|
||||||
break;
|
|
||||||
case "\u06F5":
|
|
||||||
res += "\u0035";
|
|
||||||
break;
|
|
||||||
case "\u06F6":
|
|
||||||
res += "\u0036";
|
|
||||||
break;
|
|
||||||
case "\u06F7":
|
|
||||||
res += "\u0037";
|
|
||||||
break;
|
|
||||||
case "\u06F8":
|
|
||||||
res += "\u0038";
|
|
||||||
break;
|
|
||||||
case "\u06F9":
|
|
||||||
res += "\u0039";
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
res += number[i];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return res;
|
|
||||||
};
|
|
||||||
|
|
||||||
const e2p = (s) => s.replace(/\d/g, (d) => "۰۱۲۳۴۵۶۷۸۹"[d]);
|
// //Calculate if number:String has Decimal Point Or Not
|
||||||
const e2a = (s) => s.replace(/\d/g, (d) => "٠١٢٣٤٥٦٧٨٩"[d]);
|
// const isDecimal = (number) => {
|
||||||
|
// number = getString(number);
|
||||||
|
// if (number == "") return false;
|
||||||
|
// let index = number.indexOf(".");
|
||||||
|
// let lIndex = number.lastIndexOf(".");
|
||||||
|
// if (index != lIndex) return false;
|
||||||
|
// return index > 0;
|
||||||
|
// };
|
||||||
|
// //Convert English Numbers To Persian Numbers
|
||||||
|
// const convertEnToPe = (number) => {
|
||||||
|
// if (number == null || number == undefined) return "";
|
||||||
|
// if (typeof number == "number") number = number.toString();
|
||||||
|
// let res = "";
|
||||||
|
// for (let i = 0; i < number.length; i++) {
|
||||||
|
// switch (number[i]) {
|
||||||
|
// case "\u0030":
|
||||||
|
// res += "\u06F0";
|
||||||
|
// break;
|
||||||
|
// case "\u0031":
|
||||||
|
// res += "\u06F1";
|
||||||
|
// break;
|
||||||
|
// case "\u0032":
|
||||||
|
// res += "\u06F2";
|
||||||
|
// break;
|
||||||
|
// case "\u0033":
|
||||||
|
// res += "\u06F3";
|
||||||
|
// break;
|
||||||
|
// case "\u0034":
|
||||||
|
// res += "\u06F4";
|
||||||
|
// break;
|
||||||
|
// case "\u0035":
|
||||||
|
// res += "\u06F5";
|
||||||
|
// break;
|
||||||
|
// case "\u0036":
|
||||||
|
// res += "\u06F6";
|
||||||
|
// break;
|
||||||
|
// case "\u0037":
|
||||||
|
// res += "\u06F7";
|
||||||
|
// break;
|
||||||
|
// case "\u0038":
|
||||||
|
// res += "\u06F8";
|
||||||
|
// break;
|
||||||
|
// case "\u0039":
|
||||||
|
// res += "\u06F9";
|
||||||
|
// break;
|
||||||
|
// default:
|
||||||
|
// res += number[i];
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// return res;
|
||||||
|
// };
|
||||||
|
// //Convert Persian Numbers To English Numbers
|
||||||
|
// const convertPeToEn = (number) => {
|
||||||
|
// if (number == null || number == undefined) return "";
|
||||||
|
// let res = "";
|
||||||
|
// for (let i = 0; i < number.length; i++) {
|
||||||
|
// switch (number[i]) {
|
||||||
|
// case "\u06F0":
|
||||||
|
// res += "\u0030";
|
||||||
|
// break;
|
||||||
|
// case "\u06F1":
|
||||||
|
// res += "\u0031";
|
||||||
|
// break;
|
||||||
|
// case "\u06F2":
|
||||||
|
// res += "\u0032";
|
||||||
|
// break;
|
||||||
|
// case "\u06F3":
|
||||||
|
// res += "\u0033";
|
||||||
|
// break;
|
||||||
|
// case "\u06F4":
|
||||||
|
// res += "\u0034";
|
||||||
|
// break;
|
||||||
|
// case "\u06F5":
|
||||||
|
// res += "\u0035";
|
||||||
|
// break;
|
||||||
|
// case "\u06F6":
|
||||||
|
// res += "\u0036";
|
||||||
|
// break;
|
||||||
|
// case "\u06F7":
|
||||||
|
// res += "\u0037";
|
||||||
|
// break;
|
||||||
|
// case "\u06F8":
|
||||||
|
// res += "\u0038";
|
||||||
|
// break;
|
||||||
|
// case "\u06F9":
|
||||||
|
// res += "\u0039";
|
||||||
|
// break;
|
||||||
|
// default:
|
||||||
|
// res += number[i];
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// return res;
|
||||||
|
// };
|
||||||
|
|
||||||
const p2e = (s) => s.replace(/[۰-۹]/g, (d) => "۰۱۲۳۴۵۶۷۸۹".indexOf(d));
|
// const e2p = (s) => s.replace(/\d/g, (d) => "۰۱۲۳۴۵۶۷۸۹"[d]);
|
||||||
const a2e = (s) => s.replace(/[٠-٩]/g, (d) => "٠١٢٣٤٥٦٧٨٩".indexOf(d));
|
// const e2a = (s) => s.replace(/\d/g, (d) => "٠١٢٣٤٥٦٧٨٩"[d]);
|
||||||
|
|
||||||
const p2a = (s) =>
|
// const p2e = (s) => s.replace(/[۰-۹]/g, (d) => "۰۱۲۳۴۵۶۷۸۹".indexOf(d));
|
||||||
s.replace(/[۰-۹]/g, (d) => "٠١٢٣٤٥٦٧٨٩"["۰۱۲۳۴۵۶۷۸۹".indexOf(d)]);
|
// const a2e = (s) => s.replace(/[٠-٩]/g, (d) => "٠١٢٣٤٥٦٧٨٩".indexOf(d));
|
||||||
const a2p = (s) =>
|
|
||||||
s.replace(/[٠-٩]/g, (d) => "۰۱۲۳۴۵۶۷۸۹"["٠١٢٣٤٥٦٧٨٩".indexOf(d)]);
|
|
||||||
|
|
||||||
export {
|
// const p2a = (s) =>
|
||||||
convert,
|
// s.replace(/[۰-۹]/g, (d) => "٠١٢٣٤٥٦٧٨٩"["۰۱۲۳۴۵۶۷۸۹".indexOf(d)]);
|
||||||
sliceNumber,
|
// const a2p = (s) =>
|
||||||
convertEnToPe,
|
// s.replace(/[٠-٩]/g, (d) => "۰۱۲۳۴۵۶۷۸۹"["٠١٢٣٤٥٦٧٨٩".indexOf(d)]);
|
||||||
convertPeToEn,
|
|
||||||
e2p,
|
// export {
|
||||||
e2a,
|
// convert,
|
||||||
p2e,
|
// sliceNumber,
|
||||||
a2e,
|
// convertEnToPe,
|
||||||
p2a,
|
// convertPeToEn,
|
||||||
a2p,
|
// e2p,
|
||||||
};
|
// e2a,
|
||||||
|
// p2e,
|
||||||
|
// a2e,
|
||||||
|
// p2a,
|
||||||
|
// a2p,
|
||||||
|
// };
|
||||||
|
|
Loading…
Reference in New Issue
Block a user