![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 15:43
|
![Аватар для Livanderiaamarum](https://javascript.ru/forum/image.php?u=17626&dateline=1350580436) |
Профессор
|
|
Регистрация: 10.12.2011
Сообщений: 290
|
|
<div id="d1">Съешь еще этих мягких французских булок да выпей же чаю, жуёба
3
25утолимоипечали</div>
<script>
var text = document.getElementById('d1');
text.innerHTML = text.innerHTML.replace(/^\s|\s$/g, '').replace(/^.|.$/g, '<span style="color:red;">$&</span>');
</script>
что ты сделал с моими пробелами)?
Последний раз редактировалось monolithed, 15.01.2012 в 15:46.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 15:44
|
Особый гость
|
|
Регистрация: 02.04.2010
Сообщений: 4,260
|
|
Сообщение от Livanderiaamarum
|
И в чем же там лексический анализ?
|
Лексический анализ
Сообщение от Livanderiaamarum
|
что ты сделал с моими пробелами)?
|
опечатался, поправил
Последний раз редактировалось monolithed, 15.01.2012 в 15:47.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 16:11
|
![Аватар для Gozar](https://javascript.ru/forum/image.php?u=11&dateline=1402119167) |
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от monolithed
|
Немного не спортивно, но как-то так:
<p> text </p>
<p id="text"> text </p>
<script>
var text = document.getElementById('text');
text.innerHTML = text.innerHTML.replace(/^\s|\s$/g, '').replace(/^.|.$/g, '<span style="color:red;">$&</span>');
</script>
|
Можно забить, но существуют ещё
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 16:12
|
![Аватар для nerv_](https://javascript.ru/forum/image.php?u=17434&dateline=1529696550) |
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
еще такой вариант
<p> Duis te feugifacilisi </p>
<script type="text/javascript">
with(document.getElementsByTagName("p")[0]) {
var x = "<span style=\"color:green\">$&</span>";
innerHTML = innerHTML.replace(/\S(?=\s*$)/, x).replace(/\S/, x);
}
</script>
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 16:15
|
![Аватар для Gozar](https://javascript.ru/forum/image.php?u=11&dateline=1402119167) |
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
<p> D </p>
<script type="text/javascript">
with(document.getElementsByTagName("p")[0]) {
var x = "<span style=\"color:green\">$&</span>";
innerHTML = innerHTML.replace(/\S(?=\s*$)/, x).replace(/\S/, x);
}
</script>
Два реплейса подряд делать не стоит.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 16:29
|
![Аватар для nerv_](https://javascript.ru/forum/image.php?u=17434&dateline=1529696550) |
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
Gozar, спасибо, понял. Вроде как исправил, только один момент мне остается не ясным: куда деваются пробелы и знаки табуляции в начале и конце строки?) Ясно IE шутки шутит) Собственно, какая разница как будет захватывать спан с пробелами или нет, если на странице это все равно не заметно (в данном случае)?
<p> Duis te feugifacilisi </p>
<script type="text/javascript">
with(document.getElementsByTagName("p")[0]) {
innerHTML = innerHTML.replace(/^\s*(\S)|(\S)\s*$/g, function(f1, f2, f3) {
return "<span style='color:green'>" + (f3 || f2 || f1) + "</span>";
});
alert("!" + innerHTML + "!");
}
</script>
Ну как-то так...
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Последний раз редактировалось nerv_, 15.01.2012 в 16:45.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 16:37
|
Особый гость
|
|
Регистрация: 02.04.2010
Сообщений: 4,260
|
|
Сообщение от nerv_
|
куда деваются пробелы и знаки табуляции в начале и конце строки?
|
заменяются
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 16:46
|
Особый гость
|
|
Регистрация: 02.04.2010
Сообщений: 4,260
|
|
Сообщение от Gozar
|
но существуют ещё
|
Точно.
<p id="text"> text </p>
<script>
var text = document.getElementById('text');
text.innerHTML = text.innerHTML.replace(/^( |\s)+|( |\s)+$/g, '').replace(/^.|.$/g, '<span style="color:red;">$&</span>');
</script>
Последний раз редактировалось monolithed, 15.01.2012 в 17:16.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 16:47
|
![Аватар для nerv_](https://javascript.ru/forum/image.php?u=17434&dateline=1529696550) |
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
Сообщение от monolithed
|
заменяются
|
спасибо, но я не об этом. Я в своем примере (кот. был) брал в аргументы функции (допустим) первый символ и стоящие перед ним пробелы. А IE в отладчике показывал только этот символ, без всего остального.
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
15.01.2012, 17:01
|
![Аватар для Gozar](https://javascript.ru/forum/image.php?u=11&dateline=1402119167) |
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от monolithed
|
replace(/^( |\s)+|( |\s)+$/g, '');
|
Лучше не удалять, а заменять на пробелы, более правильно что ли.
В конечном счёте всё сведется к какой-нибудь реге в 50-150 символов ![Laugh](https://javascript.ru/forum/images/smilies/laugh.gif)
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
|
|