- PHP REGEX удалить скобки и текст в скобках
- 2 ответа
- Ещё вопросы
- Удаление регулярными выражениями в PHP
- Текст и символы
- Удалить все пробелы
- Удалить двойные пробелы
- Удалить лишние пробелы перед знаками препинания
- Оставить в тексте только буквы, цифры и пробел
- Удалить цифры
- Удалить латинские буквы
- Удалить русские буквы
- Удалить все буквы и цифры
- Удалить все кроме цифр и пробелов
- Удалить табуляцию
- Удалить переносы строк
- Удалить определенное количество символов
- Удалить текст до определенного символа
- Удалить текст после символа
- Удалить скобки с их содержимым
- Комментарии
- Удалить комментарии из HTML
- Удаление многострочных комментариев «/* . */»
- Удалить комментарии «//» и «#»
- Комментарии SQL « —. »
- Нумерация строк
- Хештеги
- Обрезать фразу на первой открывающейся скобке
PHP REGEX удалить скобки и текст в скобках
Необходимо удалить в нем скобки и текст. Пока что это работает. Удаляет весь текст, начиная с скобки. Мой код:
$lines = preg_replace("/\(([^\d]+)/", '', $lines);
Some random words (word1 / word2 / word3) aaaa
2 ответа
- \( — открывающая скобка
- [^()]* — как можно больше символов, которые не являются скобками
- \) — закрывающая скобка
Вы можете по желанию удалить одно пространство в конце ( /\([^()]*\) ?/ ), чтобы у вас не было двух пробелов, где произошло удаление.
Обратите внимание, что это не будет обрабатывать случаи вложенных скобок, например:
Чтобы сделать это, вам нужно быть немного более креативным:
Вам не хватает дополнительного \) в конце вашего выражения. Как и в случае, ваше выражение начнет соответствовать моменту, когда он найдет открытую скобку и продолжит работу.
Ещё вопросы
- 0 Выполнить php с помощью exec () не работает
- 0 php переместить пользователя на страницу 404 после ввода неверного URL
- 1 Начальная точка анимации прогресса шестиугольника D3 js
- 0 Как рассчитать количество дней между двумя датами? [Дубликат]
- 0 оставаясь на той же странице, используя заголовок местоположения в php
- 0 appendChild () не работает в Chrome специально. Может не интерпретироваться как JavaScript
- 0 Вызов функции в классе, который расширяет текущий абстрактный класс
- 1 Angular 2 Host Listener Change div heigtht
- 1 Конвертировать PNG-изображение в BLOB-изображение с помощью JavaScript?
- 0 Структура данных для обработки списка из 3 целых чисел
- 1 Расширение Facebook токена
- 0 Как реализовать PHP в HTML-файл
- 1 Код для создания личности в онтологии?
- 1 Совпадения с регулярными выражениями
- 1 Кадр данных Pandas в дублированную матрицу в сумме величин
- 1 Почему этот код JavaScript допустим и работает с запятыми в квадратных скобках? [Дубликат]
- 1 Ссылка «реакции-роутер-дом» не работает?
- 0 Создание представления в MySQL, которое должно обновляться еженедельно
- 0 Android показать график просмотра текста
- 1 Почему класс YUIJsCompressorProcessor не включен ни в ядро, ни в расширения jar для wro4j?
- 0 Ошибка «Необходимо указать поле grant_type» при получении токена Oauth2
- 0 мгновенный поиск без раскрывающегося списка с помощью jquery ui
- 0 Не могу понять, почему это не работает
- 1 Ожидание непустой строки для ошибки параметра ‘providerInvariantName’ в приложении c #, имеющем базу данных доступа
- 0 Запустите JavaScript на Btn, но не контейнер
- 0 Ошибка Boost Thread C2064 при попытке компиляции
- 0 как скрыть и показать опции выбора для другой панели выбора
- 1 Unity — CommandInvokationFailure: сборка Gradle завершилась неудачно
- 0 Разница во времени между строками (MySQL)
- 1 Как разрешить передачу пустого значения в MVC WebApi для двойного типа
- 0 Как отобразить значения массива PHP в Google Charts на основе JS?
- 1 Как заставить панды рассматривать каждую строку как столбец на основе определенной переменной даты? [Дубликат]
- 1 Текстовый редактор с Tkinter Python 3
- 1 Как перебрать детей Firebase и добавить их ключи в список?
- 1 Установка десятичного значения в форме не всегда работает — Dynamics CRM 2013
- 1 Запустите приложение Python Flask с модулем nginx
- 0 У ребенка от родителя с положением абсолютного или фиксированного растяжения до полной высоты области просмотра
- 1 Распечатайте упаковочный лист «Адрес не указан» через REST API C #
- 0 Транспортир sendKeys возвращает NoSuchElementError
- 0 PHP многомерный массив
- 0 AngularJS Valdiation не работает с директивой People Picker
- 0 Диалог JQuery «Закрыть»
- 0 CryptStringToBinary API поведение
- 0 Как настроить работу cron Magento (1.8.1) в Cpanel
- 0 Бинарный столбец SQL, если пользователь играл
- 1 Неправильный вывод в моей задаче, не могу ее решить
- 0 Аргументы не проходят через мой сервис между контроллерами
- 1 Ошибка рекурсии при получении переполнения стека с обнаружением коллизий
- 0 Отображение Dialong с эффектами в зависимости от выбора меню — jQuery UI
- 1 Комната Android: сбой ограничения FOREIGN KEY (код Sqlite 787)
Удаление регулярными выражениями в PHP
Примеры регулярных выражений для удаления данных из текста.
Текст и символы
Удалить все пробелы
$text = 'a b c d e'; $text = mb_ereg_replace('[\s]', '', $text); echo $text; // abcde
Удалить двойные пробелы
$text = 'a b c d e'; $text = mb_ereg_replace('[ ]+', ' ', $text); echo $text; // a b c d e
Удалить лишние пробелы перед знаками препинания
$text = 'Многие ! известные ? личности , и по сей день .'; echo preg_replace("/\s+([\.|,|!|\?]+)/", '\\1',$text);
Многие! известные? личности, и по сей день.
Оставить в тексте только буквы, цифры и пробел
$text = 'Многие известные. личности, по: сей день.'; echo mb_eregi_replace("[^a-zа-яё0-9 ]", '', $text);
Многие известные личности по сей день
Удалить цифры
$text = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя abcdefghijklmnopqrstuvwxyz 0123456789'; echo mb_eregi_replace('7', '', $text);
абвгдеёжзийклмнопрстуфхцчшщъыьэюя abcdefghijklmnopqrstuvwxyz
Удалить латинские буквы
$text = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя abcdefghijklmnopqrstuvwxyz 0123456789'; echo mb_eregi_replace('[a-z]', '', $text);
абвгдеёжзийклмнопрстуфхцчшщъыьэюя 0123456789
Удалить русские буквы
$text = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя abcdefghijklmnopqrstuvwxyz 0123456789'; echo mb_eregi_replace('[а-яё]', '', $text);
Удалить все буквы и цифры
$text = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя abcdefghijklmnopqrstuvwxyz 0123456789 . '; echo mb_eregi_replace('[\w]', '', $text);
Удалить все кроме цифр и пробелов
$text = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя abcdefghijklmnopqrstuvwxyz 0123456789 . '; echo mb_eregi_replace('[^0-9 ]', '', $text);
Удалить табуляцию
Удалить переносы строк
echo preg_replace("/[\r\n]/", '', $text);
Удалить определенное количество символов
Примеры удаляют девять символов в начале и конце текста.
// Удаление с начала $text = mb_eregi_replace("^.(.*)$", '\\1', $text); echo $text; // Удаление с конца $text = mb_eregi_replace("(.*)[^.]$", '\\1', $text); echo $text;
Удалить текст до определенного символа
Данные регулярные выражения удаляют все что находится до первого искомого символа, а также пробел который идет за ним.
$text = 'Многие известные. личности, по: сей - день.'; // Удалить до пробела echo preg_replace("/^(.*?)(\s)(.*?)$/", '\\3', $text); // Удалить до "." echo preg_replace("/^(.*?)(\.\s)(.*?)$/", '\\3', $text); // Удалить до "," echo preg_replace("/^(.*?)(,\s)(.*?)$/", '\\3', $text); // Удалить до ":" echo preg_replace("/^(.*?)(:\s)(.*?)$/", '\\3', $text); // Удалить до "-" echo preg_replace("/^(.*?)(-\s)(.*?)$/", '\\3', $text);
известные. личности, по: сей - день. личности, по: сей - день. по: сей - день. сей - день. день.
Удалить текст после символа
$text = 'Многие известные. личности, по: сей - день.'; // Удалить после пробела echo preg_replace("/^(.+?)\s.+$/", '\\1', $text); // Удалить после «.» echo preg_replace("/^(.+?)\..+$/", '\\1', $text); // Удалить после «,» echo preg_replace("/^(.+?),.+$/", '\\1', $text); // Удалить после «:» echo preg_replace("/^(.+?):.+$/", '\\1', $text); // Удалить после «-» echo preg_replace("/^(.+?)-.+$/", '\\1', $text);
Многие Многие известные Многие известные. личности Многие известные. личности, по Многие известные. личности, по: сей
Удалить скобки с их содержимым
$text = '(Casio G-SHOCK) [GW-9200-1ER] '; // Удаление (. ) echo preg_replace("/(.*?)\(.*?\)\s?(.*?)/is", '\\1\\3', $text); // Удаление [. ] echo preg_replace("/(.*?)\[.*?\]\s?(.*?)/is", '\\1\\3', $text); // Удаление echo preg_replace("/(.*?)\<.*?\>\s?(.*?)/is", '\\1\\3', $text); // Удаление [. ] echo preg_replace("/(.*?)<.*?>\s?(.*?)/is", '\\1\\3', $text);
Комментарии
Удалить комментарии из HTML
$text = 'Текст текст
'; echo preg_replace('/\s?\s?/', ' ', $text);
Удаление многострочных комментариев «/* . */»
$text = " /** * Описание функции и тд * @param name * @param defaultValue * @returns */ document.write(' '); "; echo preg_replace("/\/\*(.*?)\*\//sm", '', $text);
Удалить комментарии «//» и «#»
$text = " // По возрастанию: ksort($array); # По убыванию: krsort($array);"; $res = preg_replace("/\/\/.*\n/", '', $text); $res = preg_replace("/#.*\n/", '', $res); echo $res;
Комментарии SQL « —. »
$text = " SELECT * FROM `articles` WHERE `name` LIKE '%KEY%' -- OR `title` LIKE '%KEY%' OR `text` LIKE '%KEY%'"; echo preg_replace("/\s--.*\n/", '', $text);
SELECT * FROM `articles` WHERE `name` LIKE '%KEY%' OR `text` LIKE '%KEY%'
Нумерация строк
$text = ' 1 text text text. 2 text text text. 3 text text text. 1. text text text. 2. text text text. 3. text text text. 1) text text text. 2) text text text. 3) text text text.'; echo preg_replace('/(\d)+(\.|\)|\s)+([\s]?)+(.*)/', '\\4', $text);
text text text. text text text. text text text. text text text. text text text. text text text. text text text. text text text. text text text.
Хештеги
$text = 'broken beat, nu jazz, downtempo #nujazz, #downtempo, #intelligent'; echo preg_replace('/#([\S]+)/', '', $text);
broken beat, nu jazz, downtempo
Обрезать фразу на первой открывающейся скобке
До сих пор беда с регулярками.
Есть фраза: Кровать (Венге)
как составить регулярку, чтобы на выходе нам отдавалось только: Кровать
?
Дана символьная строка. Получить новую строку, взяв из данной все символы, находящиеся между первой открывающейся скобкой и последней закрывающейся
*Дана символьная строка. Получить новую строку, взяв из данной все символы, находящиеся между.
Обрезать каждую строку после первой точки с запятой
Подскажите пожалуйста (Файл типа .CSV разделение точка с запятой) в файле всего 5 строк нужно.
Дан файл. В новый файл записать самую длинную фразу и фразу с наибольшим количеством слов
Здравствуйте. Вот задача Дан файл, содержащий некоторый текст. В новый файл записать самую длинную.
$text = "Кровать (Венге)"; echo strstr($text, '(', true);
BarbosLV, это не регулярка.
$string = 'Кровать (Венге)'; $matches = []; preg_match('#([А-Яа-я]+)\s\([А-Яа-я]+\)#u', $string, $matches); var_dump($matches);
Зачем так сложно? — Дословная реализация задачи куда читабельнее..
$string = "Кровать (Венге)"; $string = preg_replace("#\(.+#m", '', $string);
preg_match('~^Кровать~u', 'Кровать (Венге)', $matches); var_dump($matches);
Сообщение от Tatikoma
в задании же написано. регуляркой надо. да и в раздел этот постят только ж сурьезные люди, не так просто, наверное!:))
Сообщение от NEbO
что это :facepalm: автор наверное предполагал что строки разные могут быть.
Может быть тогда сделать еще проще:
Сообщение от pav1uxa
Добавлено через 12 минут
Сообщение от Tatikoma
$string = preg_replace("#\(.+#m", '', $string);
$string = preg_replace("#\s*\(.+#m", '', $string)
preg_match('~^[^(]+(?<=\S)~', $string, $m); var_dump($m);
$tmp = explode('(', $string, 2); $result = trim($tmp[0]);
$pos = strpos($string, '('); $result = trim(substr($string, 0, $pos));
Нужны только числа в скобке?
71:84(15:28, 14:20, 27:18, 15:18) …hg 123:84(15:28, 14:20, 27:18, 15:18) …+).
задание ввести x и вычислить y=в фигурной скобке sin|x|,если xНарод помогите кто может очень нуно. 1 задание Введите с клавиатуры x,y и вычислить,используя.
Создание Плавно открывающейся формы
Лазил по вашему форумо и нашол очень забавный пример кода, программа открывается плавно появляясь.
Каждой открытой скобке должна соответствовать корректно закрытая скобка
Дана строка. Проверьте правильность расстановки в ней круглых скобок: каждой открытой скобке должна.