Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const nrFormat = (nr: string) => {
- const endFormat = (nr: string) => {
- const l = nr.length;
- if(l > 9) {
- return nr.substr(0, 3) + ' ' + nr.substr(3, 3) + ' ' + endFormat(nr.substr(6));
- }
- if(l > 6) {
- return nr.substr(0, 3) + ' ' + endFormat(nr.substr(3));
- }
- if(l === 6) {
- return nr.substr(0, 2) + ' ' + nr.substr(2, 2) + ' ' + nr.substr(4);
- }
- if(l > 3) {
- return nr.substr(0, l - 2) + ' ' + nr.substr(l - 2);
- }
- return nr;
- }
- const svFormat = (nr: string) => {
- const prefixes = ['200', '20', '900', '90', '8', '10', '11', '13', '16', '18', '19', '21', '23', '26', '31', '33', '35', '36', '40', '42', '44', '46', '54', '60', '63', '99'];
- for(const prefix of prefixes) {
- if(nr.substr(0, prefix.length) === prefix) {
- return prefix + '-' + endFormat(nr.substr(prefix.length));
- }
- }
- return nr.substr(0, 3) + '-' + endFormat(nr.substr(3));
- };
- const digits = nr.replace(/\D/g, '');
- if(digits[0] === '0') {
- return '+46 (0) ' + svFormat(digits.substr(1));
- }
- if (digits[0] !== '4' || digits[1] !== '6') {
- return nr;
- }
- if (digits[2] === '0') {
- return '+46 (0) ' + svFormat(digits.substr(3));
- }
- return '+46 (0) ' + svFormat(digits.substr(2));
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement