2017-08-30 50 views
2

我正在基於我們的IP電話所使用的電話簿創建一個基於Web的電話簿。我得到的輸出在單行上打印所有名稱和數字。每個數字由三位數字組成,在這些數字後面,我需要一個新行。我得到的最接近是這樣的:尋找正則表達式來替換三位數後的空格

enter image description here

name one 111 name two 222 name three 333 name four 444 

使用(\d)(\s)

但是,這仍然選擇三個數字的最後一個數字,所以我不能用一個換行符替換它。

任何可能能夠幫助我的人?我的代碼是用JavaScript和JQuery編寫的。

+2

也許,'s.replace打破(/(\ d)\ s/g,'$ 1 \ n')'。 –

+0

你也應該包括你的JavaScript代碼。 –

+1

's.replace(/ \ b(\ d {3})\ s/g,'$ 1 \ n')' –

回答

3

您可以使用以下正則表達式:

/(\s\d{3})\s/g 

var str = 'name one 111 name two 222 name three 333 '; 
 

 
str = str.replace(/(\s\d{3})\s/g, '$1\n'); 
 

 
console.log(str);

1

正則表達式在號碼的對方

str = str.replace(/ (?=\d{3})/g, '\n'); 
+0

你回答什麼問題? – Toto

+0

道理之一(第一個)。抱歉回覆晚了。我離線了。 – Christian

+0

但他們想要在數字之後換行,而不是之前。 – Toto