Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   вирезать последни часть, после задаммого символа (https://javascript.ru/forum/misc/26078-virezat-posledni-chast-posle-zadammogo-simvola.html)

dadli 24.02.2012 17:34

вирезать последни часть, после задаммого символа
 
еше раз здравтвуите :)

есть строка, хочется вирезать из него последни часть, после заданного символа.
например есть строка "aaa.www.ddd" задаём символ . (точка) получаем .ddd

как ето реализоваеть ?

Aetae 24.02.2012 17:41

alert(
/\.[^\.]*$/.exec( "aaa.www.ddd" )[0]
)

nikita.mmf 24.02.2012 17:43

var str = 'aaa.www.ddd';
alert( str.slice( str.lastIndexOf('.') + 1 ) );

Mахmaxmaximus 24.02.2012 17:55

nikita.mmf,
четко, наш парень)

dadli 25.02.2012 11:59

спасибо :)

Pavel M. 25.02.2012 15:04

Цитата:

Сообщение от nikita.mmf (Сообщение 159705)
var str = 'aaa.www.ddd';
alert( str.slice( str.lastIndexOf('.') + 1 ) );

в IE < 9 только не работает

Mахmaxmaximus 25.02.2012 15:08

Pavel M.,
кстати я уже под <9 не верстаю)

Rootpassword 25.02.2012 15:11

Цитата:

Сообщение от Mахmaxmaximus
кстати я уже под <9 не верстаю)

winXP пользователи шлют лучи добра.

Pavel M. 25.02.2012 15:15

Цитата:

Сообщение от Mахmaxmaximus (Сообщение 159837)
Pavel M.,
кстати я уже под <9 не верстаю)

это личное дело каждого, что поддерживать - просто желательно упоминать об этом в форуме, когда приводишь примеры кода

nikita.mmf 25.02.2012 16:15

Pavel M.,
совсем забыл, что это не работает в IE < 9.
var lastIndexOf =	String.prototype.lastIndexOf ?
					function ( str, searchstring ) {
						return str == null ? null : String.prototype.lastIndexOf.call( str, searchstring );
					} :
					function ( str, searchstring ) {
						if ( str == null ) return null;
						str = str + "";
						var strLength = str.length;
						var indexOf = str.split('').reverse().join('').indexOf( searchstring );
						return indexOf > -1 ? strLength - indexOf - 1 : -1;
					}
var foo = "aaa.ddd.bar";
alert( foo.slice( lastIndexOf( foo, '.' ) + 1 ) );


Часовой пояс GMT +3, время: 13:12.