2016-02-04 101 views
-1

我有一些帶有國家代碼的電話號碼(例如var number = +12013334444),我應該用特定的方式解析(例如1 2013334444)。此外,我還將不帶'+'的國家/地區代碼保存在變量中(例如countryCode === 1 // true)。我認爲在正則表達式和替換函數的幫助下解析它會很好。類似這樣的:用正則表達式解析電話號碼並替換()

number.replace(/(countryCode)(/[0-9]/gi)/, '$1 $2'); 

但它不適合我。有沒有優雅的方式來解析數字而不使用indexOf()和substr()?

回答

1

試試這個

var number = "+12013334444"; 
var countryCode = "1"; 

var formattedValue = number.split("+" + countryCode).join("+" + countryCode + " "); 
alert(formattedValue); 
0

試試這個:

var numbers = [ 
 
    '+12013334444', 
 
    '+1 2013334444' 
 
]; 
 
var output = numbers.map(function(number) { 
 
    return number.replace(/(\+[0-9])(?!)/, '$1 '); 
 
}).join('\n'); 
 
document.getElementById('output').innerHTML = output;
<pre id="output"></pre>