Показать сообщение отдельно
  #8 (permalink)  
Старый 22.12.2015, 18:44
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

В подстроке нужно бы ещё спецсимволы экранировать, а то:

var slovo = 'javascript';
var search = 'V.S';
var regex = new RegExp('(' + search + ')', 'i');
var result = regex.test(slovo) ? slovo.replace(regex, '<b>' + "$1" + '</b>') : slovo;
alert(result);



--------
Вариант без регулярок, может кому-нибудь пригодится:


function searchToBold(text, search) {
	var i = text.toLowerCase().indexOf(pattern.toLowerCase());
	if(i + 1) {
		text = text.substr(0, i) + text.substr(i, search.length).bold() + text.substr(i + search.length);
	}
	return text;
}


alert(searchToBold('javascript', 'vas'));


P.S.: bold() хоть и устаревший метод, но смотрится красивее.
Ответить с цитированием