我有一个字符串12345.00,我希望它返回12345.0。

我看了一下trim,但它看起来只是在修剪空白和切片,我不知道这是如何工作的。有什么建议吗?


当前回答

最简单的方法是使用字符串的切片方法,该方法允许负位置(对应于从字符串末尾的偏移):

const s = "your string";
const withoutLastFourChars = s.slice(0, -4);

如果需要更一般的方法来删除最后一个下划线之后的所有内容(包括),可以执行以下操作(只要确保s至少包含一个下划线):

consts=“your_string”;const withoutLastChunk=s.slice(0,s.lastIndexOf(“_”));console.log(不带LastChunk);

其他回答

1.(.*),多次捕获任何字符:

console.log(“字符串”.match(/(.*).$/)[1]);

2..,匹配最后一个字符,在这种情况下:

console.log(“字符串”.match(/(.*).$/));

3.$,匹配字符串的结尾:

console.log(“字符串”.match(/(.*).{2}$/)[1]);

https://stackoverflow.com/questions/34817546/javascript-how-to-delete-last-two-characters-in-a-string

如果不需要空间,只需使用修剪

"11.01 °C".slice(0,-2).trim()
if(str.substring(str.length - 4) == "_bar")
{
    str = str.substring(0, str.length - 4);
}

您可以使用JavaScript字符串对象的substring方法:

s = s.substring(0, s.length - 4)

它无条件地从字符串s中删除最后四个字符。

但是,如果要有条件地删除最后四个字符,则仅当它们完全是_bar时:

var re = /_bar$/;
s.replace(re, "");

如果要删除接近字符串末尾的内容(对于大小可变的字符串),可以将slice()和substr()组合起来。

我有一个动态构建的带有标记的字符串,其中有一个用逗号分隔的锚标记列表。字符串类似于:

var str = "<a>text 1,</a><a>text 2,</a><a>text 2.3,</a><a>text abc,</a>";

要删除最后一个逗号,我执行了以下操作:

str = str.slice(0, -5) + str.substr(-4);