删除点。从字符串的末尾开始签名

时间:2014-01-04 18:46:05

标签: javascript

我有这个要求,只需从字符串中删除最后一个.点符号。

假如我们有var str = 'abcd dhfjd.fhfjd.';我需要删除最后一个点符号,它会输出abcd dhfjd.fhfjd

我发现此链接(Javascript function to remove leading dot)删除了第一个点符号,但我对这一切都不熟悉,并且找不到任何关于如何删除特定最后一个字符的来源。

谢谢:)

3 个答案:

答案 0 :(得分:26)

单点:

if (str[str.length-1] === ".")
    str = str.slice(0,-1);

多个点:

while (str[str.length-1] === ".")
    str = str.slice(0,-1);

单点,正则表达式:

str = str.replace(/\.$/, "");

多个点,正则表达式:

str = str.replace(/\.+$/, "");

答案 1 :(得分:1)

if(str.lastIndexOf('.') === (str.length - 1)){
    str = str.substring(0, str.length - 1);
}

答案 2 :(得分:0)

这将删除所有尾随点,并且对于初学者可能更容易理解(与其他答案相比):

while(str.charAt(str.length-1) == '.')
{
    str = str.substr(0, str.length-1);
}