2

从第一个“点”开始,从字符串中删除“所有内容”的最快方法是什么。

例如:

This.Is.A.Test

=> 会变成

This
4

5 回答 5

4

您可以像这样使用该split()功能:

"This.Is.A.Test".split(".")[0]; // will work even if there are no dots

或者您可以将substr()函数与函数结合使用indexOf(),如下所示:

var myStr = "This.Is.A.Test";
var justTheFirstBit = myStr.substr(0, myStr.indexOf(".")); // needs 1 dot minimum
于 2012-05-20T20:29:41.553 回答
2

或者,

var string = "This.Is.A.Test";
var newstring = string.substring(0, string.indexOf("."));
于 2012-05-20T20:33:54.800 回答
0

             MDN - 替换()


您可以像这样使用该replace()功能:

"This.Is.A.Test".replace(/\..+$/,"");

这是您需要的正则表达式:

/\..+$/
于 2012-05-20T20:33:17.930 回答
0

这应该具有 O(2n) 的复杂性,并且应该搜索到第一个点(两次)。

​var a = "This.Is.String";
var ind = a.indexOf(".");
ind = ind == -1 ? a.length : ind;
​var b = a.substring(0, ind);
​
于 2012-05-20T20:34:42.303 回答
0
$('#el').text( $('#el').text().split('.')[0] );

演示

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/split

于 2012-05-20T20:37:15.400 回答