9

如果我有这样的字符串:

var str = 'Arthropoda_Arachnida_Zodariidae_Habronestes_hunti';

我怎样才能在最后一个下划线之后得到字符串的最后一部分?

在没有下划线的情况下,只返回原始字符串。

在这种情况下,我只想'hunti'

4

3 回答 3

26
var index = str.lastIndexOf("_");
var result = str.substr(index+1);
于 2012-12-12T02:46:59.590 回答
11

这很简单。用下划线分割字符串,取最后一个元素。

var last = str.split("_").pop();

当字符串不包含任何下划线时,这甚至会起作用(它会根据需要返回原始字符串)。

于 2012-12-12T02:44:51.897 回答
3

您可以使用正则表达式:

'Arthropoda_Arachnida_Zodariidae_Habronestes_hunti'.match(/[^_]*$/)[0];
于 2012-12-12T03:03:57.977 回答