javascript:从字符串中删除斜杠“扩展名”?

时间:2011-08-01 09:07:33

标签: javascript string

最快的方法,通过不使用regexp (.html,.htm,.xml或您提供的任何内容)从字符串中删除特定扩展名是什么? ?

我需要这个来一次转换~500个字符串< 1s。

示例:

var myURL  = 'home/johndoe/likes/pepsico.html' 
var result = 'home/johndoe/likes/pepsico'

编辑:

      var alias = window.location.pathname //'/home/johndoe/likes/pepsico.html' 

      alias = alias.substr(alias.indexOf('/') + 1)
      alias = alias.substr( 0, alias.lastIndexOf('.') );

我该如何优化呢?

3 个答案:

答案 0 :(得分:4)

你甚至不需要正则表达式来完成这项工作:

var myURL  = 'home/johndoe/likes/pepsico.html',
    myURL  = myURL.substr( 0, myURL.lastIndexOf('.') );

console.log( myURL );  // "home/johndoe/likes/pepsico"

答案 1 :(得分:2)

使用JavaScript lastIndexOf() MethodJavaScript substring() Method

var myURL  = 'home/johndoe/likes/pepsico.html',
myURL  = myURL.substring(0, myURL.lastIndexOf('.'));
alert(myURL);

答案 2 :(得分:2)

var myURL  = 'home/johndoe/likes/pepsico.html';
var result = myURL.substr(0, myURL.lastIndexOf("."));
// .substring() also works

注意:以上示例不检查字符串中是否没有.