基于JavaScript / jQuery格式字符串的格式编号

前端之家收集整理的这篇文章主要介绍了基于JavaScript / jQuery格式字符串的格式编号前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
比方说我有一个

>格式字符串“XXX – XXX – XXXX”(格式化电话号码)或X代表数字的任何其他格式字符串
>我想保留格式字符串中的格式(间距,破折号等),但是将每个X换成一个数字并删除源字符串中的所有格式

例子:

>输入:“abc d(123)4567890”,格式字符串:“XXX – XXX – XXXX”,输出:“123 – 456 – 7890”
>输入“a b c 1 2 3 4567890”,格式字符串:“X:X!XXXXX,XXX”,输出:“1:2!34567,890”
>输入“1234567890”,格式字符串:“(XXX)XXX-XXXX”,输出:“(123)456-7890”

我想我可以通过遍历源字符串(‘0123456789’中的foreach字符)来获取数字但我不知道如何将它优雅地放在正确的格式中.也许有一个jQuery函数已经这样做了?

解决方法

这是一种方法
function formatPhoneNumber(input,format) {
    // Strip non-numeric characters
    var digits = input.replace(/\D/g,'');

    // Replace each "X" with the next digit
    var count = 0;
    return format.replace(/X/g,function() {
        return digits.charAt(count++);
    });
}

猜你在找的jQuery相关文章