Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.02.2013, 19:24
Профессор
Отправить личное сообщение для Vampir3 Посмотреть профиль Найти все сообщения от Vampir3
 
Регистрация: 06.12.2011
Сообщений: 172

регулярка (если возможно)
Всем привет

Есть строка:

var str = "Предложение1.Предложение2.предложение3.предложение4.";


нужно каждое предложение занести в отдельный <div>
чтоб в результате была одна переменная с таким содержанием:

var result = <div>Предложение1</div><div>Предложение2</div><div>Предложение3</div><div>Предложение4</div>

Последний раз редактировалось Vampir3, 16.02.2013 в 19:28.
Ответить с цитированием
  #2 (permalink)  
Старый 16.02.2013, 19:43
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

var str = "Предложение1.Предложение2.предложение3.предложение4.";
var parts = str.split('.').filter(function(item){return item});

var fragment = document.createDocumentFragment();
for (var i=0; i < parts.length; i++) {
    var div = document.createElement('div');
    div.innerHTML = parts[i];
    fragment.appendChild(div);
}


либо
var str = "Предложение1.Предложение2.предложение3.предложение4.";
var parts = str.split('.').filter(function(item){return item});

var result = '<div>' + parts.join('</div><div>') + '</div>';
alert (result);
Ответить с цитированием
  #3 (permalink)  
Старый 16.02.2013, 20:31
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,127

Вариантики )))
var str = "Предложение1.Предложение2.предложение3.предложение4.";
var parts = str.split('.');
parts.pop();
var result = '<div>' + parts.join('</div><div>') + '</div>';
alert (result);

var str = "Предложение1.Предложение2.предложение3.предложение4.";
var parts = str.match(/[^.]+/g);
var result = '<div>' + parts.join('</div><div>') + '</div>';
alert (result);
Ответить с цитированием
  #4 (permalink)  
Старый 16.02.2013, 22:33
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

до кучи
alert(
    '<div>' + "Предложение1.Предложение2.предложение3.предложение4".replace( /\./g, '</div><div>' ) + '</div>'

);
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #5 (permalink)  
Старый 16.02.2013, 22:34
Профессор
Отправить личное сообщение для Vampir3 Посмотреть профиль Найти все сообщения от Vampir3
 
Регистрация: 06.12.2011
Сообщений: 172

danik.js, рони, nerv Спасибо большое, что нужно) +
Ответить с цитированием
  #6 (permalink)  
Старый 16.02.2013, 22:42
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

nerv_, а где крайняя точка?
Ответить с цитированием
  #7 (permalink)  
Старый 16.02.2013, 22:59
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

alert(
    '<div>' + "Предложение1.Предложение2.предложение3.предложение4.".split(/\.$/)[0].replace( /\./g, '</div><div>' ) + '</div>');
Ответить с цитированием
  #8 (permalink)  
Старый 16.02.2013, 23:06
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от danik.js
nerv_, а где крайняя точка?
slice( 0, -1 )

в чем проблема? )
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #9 (permalink)  
Старый 17.02.2013, 18:05
Аватар для pikko
Аспирант
Отправить личное сообщение для pikko Посмотреть профиль Найти все сообщения от pikko
 
Регистрация: 06.10.2012
Сообщений: 60

danik.js,
а что делает "filter"?
var parts = str.split('.').filter(function(item){return item});
Ответить с цитированием
  #10 (permalink)  
Старый 17.02.2013, 18:19
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Как что? Фильтрует
Откидывает пустые строки. Последний элемент то будет представлять из себя пустую строку. Вообще, фильтрующая функция должна проверять item !== '', но приведение строки к булеву типу дает тоже саме практически.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Возможно ли сохранять данные в отдельном документе?? Tums37 Общие вопросы Javascript 1 10.10.2011 17:09
filefilter возможно ли ? Sadist_dead Элементы интерфейса 4 30.09.2011 14:31
Возможно ли обращение к select по его name? Diablos Общие вопросы Javascript 15 26.09.2011 23:13
если сайт не отвечает то не грузить JS wlad2 Общие вопросы Javascript 13 13.11.2010 12:17
iframe | закрыть если... Geek Events/DOM/Window 5 30.09.2008 16:23