| 
 Преобразование \n в перенос строки Пользователь вводит строку в поле ввода, содержащую последовательности \n, \r, и другие спецсимволы в виде текста. Надо, чтобы перед обработкой все последовательности заменялись на спецсимволы. К примеру, ввёл юзер "asdf\nasdf", и это воспринималось именно как  "asdf asdf" ...а не "asdf\\nasdf". Есть какая-нибудь функция для такого преобразования, чтобы не создавать велосипед? | 
| 
 она? <textarea></textarea> <div></div> <script> var str = 'asdf\nasdf\nasdf\nasdf'; document.body.children[0].value = str; document.body.children[1].innerHTML = str.replace(/\n/g, '<br>'); </script> | 
| 
 Неа, без использования доп элементов. Из безопасного разве что  
alert(
  JSON.parse( 
    '"' + 
    prompt('str','asdf\\nasdf') 
    + '"'
  )
)
Или анализировать вручную. Из опасного: eval и new Function. | 
| 
 Цитата: 
 <textarea></textarea> <div></div> <script> var str = 'asdf\\nasdf\\nasdf\\nasdf'; document.body.children[0].value = str; document.body.children[1].innerHTML = str.replace(/\n/g, '<br>'); </script> | 
| 
 
alert(prompt('', 'asdf\\nadsf\\nasdf\\nadsf').replace(/\\n/g, '\n'));
 | 
| 
 Цитата: 
 Цитата: 
 | 
| 
 Aetae, Спасибо за первый пример. Правда, у него лишнее сообщение выводится, так что я сделал небезопасно: 
var re = new RegExp(document.getElementById("regex").value, demoGetOpts());
var replacewith;
eval('replacewith = "'+ document.getElementById("replacement").value.replace('"','\\"') + '"');
document.getElementById("result").value = 
	document.getElementById("subject").value.replace(re, 
		replacewith);
bes, Спасибо, но это уже "создавать велосипед" | 
| 
 Цитата: 
 
<input type="" id="replacement" value='\\\"; alert("хa-хa, было ваше стало наше");"'/>
<script type="text/javascript">
var replacewith;
eval('replacewith = "'+ document.getElementById("replacement").value.replace('"','\\"') + '"');
</script>
 | 
| 
 
<input type="" id="replacement" value='\\\"; alert("хa-хa, было ваше стало наше");"'/>
<script type="text/javascript">
var replacewith;
eval('replacewith = "'+ document.getElementById("replacement").value.replace(/([^\\]|^)((?:\\\\)*)"/g,'$1$2\\"') + '"');
</script>
Может, я не очень разбираюсь в javascript, но я умею писать регулярные выражения | 
| 
 Вложений: 1 Кстати, именно скрипты для проверки регулярных выражений я и писал. Часто нужно их проверять, да и большие тексты мне нередко нужно ими обрабатывать. Выложу готовую страницу для тестов, может, кому пригодится. | 
| Часовой пояс GMT +3, время: 19:44. |