0 / 0 / 0
Регистрация: 04.02.2016
Сообщений: 11

Работа со строками

11.01.2018, 09:08. Показов 745. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть допустим строка var str="http://site.ru/article#section6";
Нужно проверить есть ли в этой строке наличие #section6, если оно есть, то оставляем как есть, если нет, то добавить "#section6"
Но надо еще учитывать, что строка может быть и str="http://site.ru/article/statya1#section6"
Что-то у меня не выходит.
JavaScript
1
2
3
4
5
6
7
8
9
<script>
       var pattern = /article$/; /*Пока не использую, не знаю нужно ли? */
       var str="http://site.ru/article#section6";
       document.write("Строка первоначальная "+str);
       if(str.indexOf("article") && !str.indexOf("#section6")){
          str2=str+'#section6';
          document.write(str2);
       }
</script>
Сейчас на условие вообще не исполнитель не переходит. Вроде пишу условие "если есть 'article' и нету 'section6', то выполнить то-то. Вот видимо с отрицанием ошибаюсь. Как сделать правильно, подскажите пожалуйста.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.01.2018, 09:08
Ответы с готовыми решениями:

Работа со строками, заполнить компоненты строками из файла
Привет! Нужна помощь в заполнении формы В общем, есть форма отправки письма. У нее есть 2 функции, сохранить письмо и открыть письмо (на...

Работа со строками(операции над строками)
Пусть дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных латинских букв; между соседними словами...

Работа со строками. Функции работы со строками
Дана строка символов. В заданном тексте определить позицию первой точки ‘ . ‘.

5
the hardway first
Эксперт JS
 Аватар для j2FunOnly
2475 / 1847 / 910
Регистрация: 05.06.2015
Сообщений: 3,610
11.01.2018, 09:53
Цитата Сообщение от immortal727 Посмотреть сообщение
Вроде пишу условие "если есть 'article' и нету 'section6'
indexOf возвращает не логическое "есть" или "нет" а позицию с которой начинается подстрока, если же подстрока не найдена, то вернётся -1. А если подстрока найдена в начале строки, то 0 - который в JavaScript кастуется в false, здорово правда ?
Следовательно ваше условие трактуется примерно так:
if (str.indexOf("article") && !str.indexOf("#section6")) => if (15 && !(-1)) => if (true && false)
0
0 / 0 / 0
Регистрация: 04.02.2016
Сообщений: 11
11.01.2018, 09:56  [ТС]
ну а как правильно тогда сделать, подскажите пожалуйста, что лучше применить в таком случае

Добавлено через 1 минуту
Ну а как сделать правильно? Подскажите пожалуйста. Может не ту функцию применю, а надо что-то другое?
0
 Аватар для atanov
640 / 481 / 172
Регистрация: 26.05.2016
Сообщений: 2,674
11.01.2018, 11:43
ну например так:

JavaScript
1
2
var str = "http://site.ru/article";
if (str.indexOf('#section6') == -1){var str = str + '#section6';document.write(str);}else{}
1
3 / 3 / 1
Регистрация: 17.01.2017
Сообщений: 16
11.01.2018, 14:12
Я бы использовал метод match для поиска совпадений в строке
JavaScript
1
2
3
4
5
6
7
8
var str="http://site.ru/article#section6";
console.log("Строка первоначальная "+str);
if(str.match('article') && !str.match('#section6')){
    str+='#section6';
    console.log(str);
}else{
    console.log(str);
}
0
707 / 309 / 191
Регистрация: 05.03.2015
Сообщений: 822
11.01.2018, 15:30
В урле хеш всегда в конце, так что с реальными урлами проблем быть не должно

JavaScript
1
2
3
4
5
var url = "www.site.com/index.php?act=test#section6";
 
if (url.includes('#')){
window.location.hash = url.substring(url.indexOf('#'));
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.01.2018, 15:30
Помогаю со студенческими работами здесь

Задание по темам: ООП, исключения, работа со строками (возможно применение коллекций List), работа с компоновщиком
ТЯЖЕЛО РАБОТАТЬ С КОМПОНОВЩИКОМ. БУДУ РАД ВАШИМ ОТВЕТАМ. 1. Ознакомиться с принципом работы структурного шаблона проектирования...

Работа со строками в Си!
Ввести с клавиатуры символьную строку длиной не более 80 символов, рассматриваемую как произвольное абстрактное предложение, состоящее из...

Работа со строками
Добрый день, суть задачи такова: &quot;Дан файл, содержащий в каждой отдельной строке фамилию, предмет и оценку(на 1 фамилию - 1...n предметов),...

Работа со строками!
Всем доброго времени суток! Ребята, вот какой вопрос, есть ли в лотус-скрипте функция форматирования строк? Например конвертация...

Работа со строками
Уважаемые специалисты и любители 1С! Подскажите,пожалуйста,нужно написать код процедуры которая сможет вывести мне кол-во слов. Я уже...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru