私がそのような文字列を持っている場合:
var str = 'Arthropoda_Arachnida_Zodariidae_Habronestes_hunti';
最後のアンダースコアの後の文字列の最後の部分だけを取得するにはどうすればよいですか?
また、アンダースコアがない場合は、元の文字列を返すだけです。
この場合、私は'hunti'
私がそのような文字列を持っている場合:
var str = 'Arthropoda_Arachnida_Zodariidae_Habronestes_hunti';
最後のアンダースコアの後の文字列の最後の部分だけを取得するにはどうすればよいですか?
また、アンダースコアがない場合は、元の文字列を返すだけです。
この場合、私は'hunti'
var index = str.lastIndexOf("_");
var result = str.substr(index+1);
とても簡単です。文字列をアンダースコアで分割し、最後の要素を取ります。
var last = str.split("_").pop();
これは、文字列にアンダースコアが含まれていない場合でも機能します (必要に応じて元の文字列を返します)。
正規表現を使用できます。
'Arthropoda_Arachnida_Zodariidae_Habronestes_hunti'.match(/[^_]*$/)[0];