Замена символоа табуляции на пробелы.
Добрый день. Мучаюсь вот с такой задачкой, нужно заменить символ табуляции на странице на несколько связанных пробелов. Вот такой код работает в Firefox, но не работает в IE 6 версии:
<html> <head> <title>Tab replase</title> <script type="text/javascript"> <!-- function replaseTab(){ var expr = /\t/gi; var newTab = " "; //alert ("Script is work"); /* document.body.outerHTML = document.body.outerHTML.replace(expr, newTab);*/ //document.body.innerHTML = "test"; document.body.innerHTML = document.body.innerHTML.replace(new RegExp(" ", "g"), newTab); } // --> </script> </head> <body> <p> if(s[0][i] == `MINP && s[1][i] == ``MINP && s[2][i] == ``MINP)<br> start <br> return_value[0] = 1;<br> end</p> <br> <input type="SUBMIT" name="b1" value="replase Tab" onclick="replaseTab ()"> </body> </html> |
А зачем?
<p style="white-space: pre"> if(s[0][i] == `MINP && s[1][i] == ``MINP && s[2][i] == ``MINP) start return_value[0] = 1; end </p> И Ваши табы в целости и сохранности. |
Здравствуйте. Есть строковая переменная. В ней есть 4 пробела и 3 пробела и 2 пробела между словами. Как в ней заменить наборы символов:
1) 4 пробела - на один пробел; 2) 3 пробела - на один пробел; 3) 2 пробела - на один пробел; Заранее спасибо. |
assessor,
любое количество пробелов на один чтоли? var str = '111 222 333 444 555 666'; alert(str.replace(/\s+/g, ' ')); |
Да, нужно, чтобы был один пробел между словами в переменной input
|
Kolyaj, спасибо, огромное. В регулярных выражения не разбираюсь. Не успел руку с клавиатуры убрать, а Вы уже решение дали. Спасибо громадное.
|
Kolyaj, данная версия убирает "перевод каретки". И отдельные строки соединяются в одну. Как не делать этого?
|
Исключить CR(LF) из пробельных символов? Как-то так:
var str = '111 \n222 \n333 \n444 555 666'; alert(str.replace(/[^\S\r\n]+/g, ' ')); |
e1f, спасибо, громадное. Всё замечательно работает. Приходилось копировать большой текст в Ворд и там менять. А сейчас "одной левой".
|
Часовой пояс GMT +3, время: 18:06. |