JavaScript - 分割字符串

19

我有一个变量,它的值是'website.html'。

如何将变量拆分,使我只得到'website'?

谢谢


6
@Jack 当我在谷歌上搜索“javascript split string dot”时,这个页面是我找到的第一个结果。说“谷歌一下”并没有帮助任何人。 - Emile Cormier
3个回答

42
var a = "website.html";
var name = a.split(".")[0];

如果文件名中有一个点,你可以尝试...

var a = "website.old.html";
var nameSplit = a.split(".");
nameSplit.pop();    
var name = nameSplit.join(".");

但如果文件名类似于my.old.file.tar.gz,那么它会认为my.old.file.tar是文件名


如果文件名中包含点号,例如:my.super.website.html,则此方法无法正常工作。 - Anton
var nameSplit = a.split("."); nameSplit.pop(); var name = nameSplit.join(".");将 name.join(".") 改为 nameSplit.join("."),这样就可以正常工作了。 - Owais

3
String[] splitString = "website.html".split(".");
String prefix = splitString[0];

*编辑,我原以为你写的是Java而不是JavaScript

var splitString = "website.html".split(".");
var prefix = splitString[0];

3

使用一些字符串操作的另一种方法。

var myString = "website.html";
var dotPosition = myString.indexOf(".");
var theBitBeforeTheDot = myString.substring(0, dotPosition);

+1 这需要更多的代码,但不需要额外的注释来理解。 - Ricardo Souza
我记得在掌握更快的“Array.split”方法之前,我学习了基本的字符串操作。(: - JonnyReeves
值得注意的是,一些旧版浏览器不支持.indexOf()方法。 - paulslater19
@JonnyReeves 哎呀,是的,你说得对 - 我在想[].indexOf - paulslater19

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接