| 
 | 
	
	
	
	
	
		
	
		
		
		
			
			 
			
				11.10.2010, 11:13
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 11.05.2010 
					
					
					
						Сообщений: 14
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				вопрос про замену символов в строке
			 
			
		
		
		
		Здравствуйте всем! Столкнулся с проблеммой, мне необходимо в строке заменить определённый символ, например 18-ый, как это можно реализовать? 
что бы было примерно как  
str[18] = "#"
 
всем заранее спасибо!  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось Yellow79, 11.10.2010 в 11:42.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
	
		
	
		
		
		
			
			 
			
				11.10.2010, 12:23
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 11.05.2010 
					
					
					
						Сообщений: 14
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Sweet, спасибо огромное, Я бы нашёл сам, но проблемма в том что Я не знал по какому запросу искать, находилось только replace а вот про charAt там не видел, если бы нашёл, то не спрашивал бы. 
Спасибо ещё раз огромное 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				11.10.2010, 18:31
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Sweet,
  
	
 
	| 
		
			Сообщение от Sweet
			
		
	 | 
 
	
		var string = 'test',  
 
2result = string.replace(string.charAt(1), 'o');  
 
3alert(result)
	 | 
 
	
 
 Ваш код не учитывает что string.charAt(0) может быть равен string.charAt(1) и перезапишеться нулевой символ строки например var string = 'eest', 
можно так например ...
 
String.prototype.repl=function(b,c){var a=this;if(b>-1&&b<a.length){a=a.split('');a[b]=c;a=a.join('')};return a};
alert('test'.repl(1,'o'))
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				11.10.2010, 19:10
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 21.01.2010 
					
					
					
						Сообщений: 1,022
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Можно и через slice: 
String.prototype.replaceChar = function ( num, char ) {
	return this.slice( 0, num - 1 ) + char + this.slice( num );
};
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				11.10.2010, 21:03
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 16.03.2010 
					
					
					
						Сообщений: 1,618
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Признаю, конечно, не лучший способ я предложил. Лучше .slice использовать, как у exec 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				12.10.2010, 10:46
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 11.05.2010 
					
					
					
						Сообщений: 14
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 exec, ты просто БОГ JavaScript 
на самом деле мне нужно было ещё данное дело пустить в цикле по массиву цифр, с первым случаем, который любезно предоставил Sweet, вчера бился остаток дня, ничего не вышло, а вот сегодня с вашим кодом всё получилось. 
Огромное спасибо всем! 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |