2016-04-14 16 views
11

Çok küçük bir sorgum var. Ben concat, charAt, dilim ve neyi kullanmayı denedim ama nasıl yapamadım. Ben bu gibi görünmelidir bir . ile son , değiştirmek istiyorDizinin son karakterini JavaScript'i kullanarak değiştirin

var str1 = "Notion,Data,Identity," 

:

İşte benim dizedir.

var str1 = "Notion,Data,Identity." 

Birisi bana bunun nasıl yapılacağını bildirebilir mi? Kolayca regex ile yapabilirsiniz

+0

ile dize sonlandırmak için? Biraz araştırma yaptın mı? –

+0

FWIW: https://jsperf.com/replace-last-character-of-a-string –

cevap

28

,

var str1 = "Notion,Data,Identity,".replace(/.$/,".") 

.$ bir dize sonunda herhangi bir karakterle eşleşir.

+0

Teşekkürler Aravindasamy. Bu /.$/ nin ne için kullanıldığını bana da bildirir misiniz? – Patrick

+2

@Patrick Regex bileşenleri. '.' herhangi bir karakterle eşleşir. Ve '$', dizenin sonundaki herhangi bir karakterle eşleştirmek için o noktaya katılacaktır. –

16

.slice(0, -N) kullanarak bir dizenin son N karakterini kaldırabilir ve + ile yeni biti birleştirebilirsiniz. Bu durumda biz, bir- baştan dize dilim için soruyorsun böylece dilim

var str1 = "Notion,Data,Identity,"; 
var str2 = str1.slice(0, -1) + '.'; 
console.log(str2); 
Notion,Data,Identity. 

Negatif argümanlar yerine başında, dizenin sonundan uzaklıklar temsil karakter dan-uç.

2

Bu zarif değil, ancak yeniden kullanılabilir.

term(str, char)

str: dize ihtiyacı uygun sonlandırma

char: karakter * Elbette * bir şey denedim

var str1 = "Notion,Data,Identity,"; 
 

 
function term(str, char) { 
 
    var xStr = str.substring(0, str.length - 1); 
 
    return xStr + char; 
 
} 
 

 
console.log(term(str1,'.'))

İlgili konular