Javascript splitting

Javascript splitting

本文关键字:splitting Javascript      更新时间:2023-09-26

假设我有这个变量

var image = "image.jpg";

我正试图分割变量图像的内容,并将_thumbs插入其中,以获得类似image_thumbs.jpg的内容。

我该怎么做?多谢。

function addSuffix(filename, suffix)
{
    var pos = filename.lastIndexOf(".");
    var left = filename.substring(0, pos);
    var right = filename.substring(pos);
    var result = left + suffix + right;
    return result;
}
var image = "image.jpg";
var imageWithSuffix = addSuffix(image, "_thumbs");
// imageWithSuffix === "image_thumbs.jpg"

或者,只是为了好玩,使用regex的可读性更低但更短的解决方案:

function addSuffix2(filename, suffix)
{
    return filename.replace(/'.[^'.]+$/, suffix + "$&"); 
}
var image = "image.jpg";
image = image.replace(".","_thumbs.");

解决方案

1

方式

var image = "image.jpg";
var splitVar = image.split(".");
alert(splitVar[0]);
alert(splitVar[1]);
alert(splitVar[0]+"_thumbs."+splitVar[1]);
2

方式

alert(image.replace(".","_thumbs."))
http://jsfiddle.net/LqpL3/1/

如果文件名可以包含多个点,则需要取最后一个点。你可以用正则表达式来做:

var image = "image.jpg";
image = image.replace(/'.(?!.*'.)/, "_thumbs.");