0

誰かが正規表現を手伝ってくれませんか。電話番号をフォーマットし、内線番号の範囲を処理しようとしています。[1-5] の範囲を使用してみましたが、うまくいかないようです。

$(".phone").text(function(i, text) {
    if(text.length == 10) { //this portion works fine
        text = text.replace(/(\d{3})(\d{3})(\d{4})/, "($1) $2-$3");
        return text;
    }else if (text.length > 10) { //this is where I need help
        text = text.replace(/(\d{3})(\d{3})(\d{4})(\d{[1-5]})/, "($1) $2-$3 x$4");
        return text;
    }
});

ここで数値の範囲を処理する正規表現はありますか?

4

2 に答える 2

2

はい、角括弧を省略してコンマを使用してください。

\d{1,5}
于 2013-07-03T16:15:55.293 に答える
1

{[1-5]} の使用は無効です。{ と } は、一致の数がその中に含まれる 2 つの数値の間にあることを示します (どちらのパラメーターも省略できます)。[1-5] は、1、2、3、4、または 5 のうちの 1 文字に一致します。必要なもの:

    text = text.replace(/(\d{3})(\d{3})(\d{4})(\d{1,5})/, "($1) $2-$3 x$4");

代わりは。詳細については、反復に関するこのクイックスタートを参照してください。

于 2013-07-03T16:15:46.647 に答える