2017-09-15 84 views
2

我需要刪除不同字符串中的文本。從部分字符串中刪除文本

我需要的功能,這將使以下...

test: example1 
preview: sample2 
sneakpeak: model3 
view: case4 

...是這樣的:

example1 
sample2 
model3 
case4 

我已經使用substrsubstring功能試過,但未能找到解決方案。

我用selected.substr(0, selected.indexOf(':')),但是所有返回給我的是冒號前的文本。 selected是包含文本字符串的變量。

由於字符串具有不同的長度,所以它不能被硬編碼。有什麼建議麼?

回答

1

使用split函數。拆分將返回一個數組。要刪除空格使用TRIM()

var res = "test: example1".split(':')[1].trim(); 
 

 
console.log(res);

+0

這個答案最適合我!謝謝! – Rataiczak24

+0

@ Rataiczak24很高興聽到 –

1

substring需要兩個參數:剪切開始和剪切結束(可選)。

substr需要兩個參數:剪切的開始和剪切的長度(可選)。

您應該使用substr一個參數而已,切斷開始(省略了第二個參數將使從一開始的索引substr下調至月底):

var result = selected.substr(selected.indexOf(':')); 

您可能要trim結果去除結果附近的空格:

var result = selected.substr(selected.indexOf(':')).trim(); 
0

試試這個:

function getNewStr(str, delimeter = ':') { 
 

 

 
    return str.substr(str.indexOf(delimeter) + 1).trim(); 
 

 

 
}

0

你可以用正則表達式/[a-z]*:\s/gim
做參見示例代碼片段低於

var string = "test: example1\n\ 
 
preview: sample2\n\ 
 
sneakpeak: model3\n\ 
 
view: case4"; 
 

 
var replace = string.replace(/[a-z]*:\s/gim, ""); 
 

 
console.log(replace);

輸出將是:

example1 
sample2 
model3 
case4