Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Работа с текстом (https://javascript.ru/forum/misc/40308-rabota-s-tekstom.html)

Vale of tears 31.07.2013 11:15

Работа с текстом
 
Прошу помочь с такой задачей. У меня есть текст, часть которого нужно отсечь.

Пример текста:
Текст

Текст
http://сайт.рф
Любой текст
Текст


Мне нужно убрать все, что идет после "http://сайт.рф". Делаю так:
Код:

answerTextEdit.value.split('http://сайт.рф')[0] + 'http://сайт.рф';
В принципе, работает, но выглядит не очень. Подскажите вариант?

ruslan_mart 31.07.2013 12:18

Как-то так получилось :(
Код:

var str = '\n\
Текст\n\
\n\
Текст\n\
http://сайт.рф\n\
Любой текст\n\
Текст\n\
';

str.replace(/([a-zа-я\n\r]*?http:\/\/.+)(\n|\r)/i, function() {
        str = arguments[1];
});
alert(str);


рони 31.07.2013 12:27

Vale of tears,
<script>
var str = '\n\
Текст\n\
\n\
Текст\n\
http://сайт.рф\n\
Любой текст\n\
Текст\n\
';
alert(str.replace(/([\S\s]+http:\/\/сайт.рф)[\S\s]+/,'$1'));
</script>

ruslan_mart 31.07.2013 12:30

рони, то что нашёл - на то и заменил? :)
-----
Теперь всё верно:)

рони 31.07.2013 12:33

Ruslan_xDD,
переделывал js на html -- js ссылку норовит тегами оформить. смотри снова.

danik.js 31.07.2013 12:35

Если подстрока наверняка имеется, то можно так:
var str = '\n\
Текст\n\
\n\
Текст\n\
http​://сайт.рф\n\
Любой текст\n\
Текст\n\
';
 
alert( str.substring(0, str.indexOf('http​://сайт.рф')) );

рони 31.07.2013 12:47

danik.js,
и у тебя теги в скрипте ставьте <script> и html run

danik.js 31.07.2013 13:02

рони, заколдовал строку. Теперь все ок ))

Vale of tears 31.07.2013 13:06

Всем спасибо, вариант с substring и indexOf буду юзать :)

рони 31.07.2013 13:09

danik.js,
колдовская строка лепит чё попало


Часовой пояс GMT +3, время: 04:55.