Pergunta

I have a dynamically formed string like - part1.abc.part2.abc.part3.abc

In this string I want to get the substring based on second to last occurrence of "." so that I can get and part3.abc

Is there any direct method available to get this?

Foi útil?

Solução

You could use:

'part1.abc.part2.abc.part3.abc'.split('.').splice(-2).join('.'); // 'part3.abc'

You don't need jQuery for this.

Outras dicas

Nothing to do with jQuery. You can use a regular expression:

var re = /[^\.]+\.[^\.]+$/;
var match = s.match(re);
if (match) {
  alert(match[0]);
}

or

'part1.abc.part2.abc.part3.abc'.match(/[^.]+\.[^.]+$/)[0];

but the first is more robust.

You could also use split and get the last two elements from the resulting array (if they exist).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top