Форум программистов, компьютерный форум, киберфорум
PHP: RegExp
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/22: Рейтинг темы: голосов - 22, средняя оценка - 4.86
0 / 0 / 1
Регистрация: 22.08.2012
Сообщений: 43
1

Убрать все до и после

02.10.2012, 17:33. Показов 4263. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Czech Republic - Ravak - Rosa 95
Нужно удалить все, что до "-" и после "-", т.е. остаться должно "Ravak"
Также возможен такой вариант:
Czech Republic - Ravak

То что получалось регуляркой у меня, просто удаляло все либо слева, либо справа от "-", .т.е. середина пропадала в любом случае.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.10.2012, 17:33
Ответы с готовыми решениями:

Обработка адресов. Убрать все после "?"
Задача такая. Есть адрес вида: /news/novye-chekhly-dlya-iphone-4?clear_cache=Y Нужно привести к:...

Как убрать из строки все, что находится после тире
Добрый день хотелось бы спросить т.к не разу такое не делал..времени больно нет хочется уже быстрей...

Как убрать цифру 1, не могу ее убрать после установки шаблона
Вот ссылка на мой сайт http://qhag.ru/ На каждой странице стоит ЦИФРА "1". Как ее убрать не знаю,...

Убрать пробелы после сканирования
Здравствуйте форум! Подскажите плиз как решить такой вопрос. Отсканировал страницу потом...

5
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
02.10.2012, 19:11 2
PHP
1
$result = preg_replace('/^[^-]*-\\s*([^-]*)/', '$1', $source);
А если будет
foo - bar - lol - baz - qwe
то что должно остаться?
0
0 / 0 / 1
Регистрация: 22.08.2012
Сообщений: 43
02.10.2012, 19:43  [ТС] 3
Спасибо.
Да, возможен такой вариант.
Более широко:
a - b - c
a - b
e - d - c - b - a
Во всех случаях должно остаться b.

P. S. Странно, попробовал регулярку в Notepad++ не работает
0
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
02.10.2012, 19:57 4
Цитата Сообщение от Destrifer Посмотреть сообщение
P. S. Странно, попробовал регулярку в Notepad++ не работает
Версия 5? Надо 6 - там PCRE.

Добавлено через 2 минуты
Цитата Сообщение от Vovan-VE Посмотреть сообщение
PHP
1
'/^[^-]*-\\s*([^-]*)/'
Еще исправить:
PHP
1
'/^[^-]*-\\s*([^-]*).*/s'
0
0 / 0 / 1
Регистрация: 22.08.2012
Сообщений: 43
02.10.2012, 20:13  [ТС] 5
А вот не находит ничего Notepad ++. Версия 6.15. Может галка где нужна?
0
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
02.10.2012, 20:18 6
Цитата Сообщение от Destrifer Посмотреть сообщение
А вот не находит ничего Notepad ++
Если PHP-строка имеет вид
PHP
1
'/^[^-]*-\\s*([^-]*).*/s'
то само выражение в этой строке имеет вид
Код
/^[^-]*-\s*([^-]*).*/s
Помимо всего этого в N++ нужно писать только тело выражения без разделителей и модификаторов:
Код
^[^-]*-\s*([^-]*).*
0
02.10.2012, 20:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.10.2012, 20:18
Помогаю со студенческими работами здесь

Убрать отступ после футера
Не могу разобраться, от чего появляется расстояние после футера?(обозначено коричневой стрелкой) и...

Убрать нули после запятой
Ребят помоги убрать ноли после запятой. Если введу 0,3000000000000000000000000000000000000000 то он...

Убрать кнопку после нажатия
Как сделать так, чтобы нажав на кнопку она убиралась?

Убрать нули после запятой
Накосячил в коде, нужна помощь ,чтобы убрать нули после запятой using System; using...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru