Не получается составить шаблон для последней части строки.
$string = '201706151400_NEW_SIL_db-n8-stanc_DBCollectorConf_HUB_SQL_ST_MSI_VIEW_TEST_dima.gz';
$newstring = preg_replace('/(NEW_|_DBCollectorConf|\.gz)/', '',$string);
Как не пробовал - не могу подобрать шаблон, чтобы попадала еще только последняя часть строки: "_dima". В ней может содержаться цифры или буквы любой длины.
В изначальном варианте '/(NEW_|_DBCollectorConf|\.gz)/
находит следующие подстроки
- 'NEW_
_DBCollectorConf
- _DBCollectorConf
\.gz
- .gz
.Если нужно оставить всё как есть, и разрешить опциональное совпадение _
+ 1 и более символов, отличных от _
перед .gz
, нужно использовать
'~NEW_|_IUMCollectorConf|(?:_[^_]+)?\.gz~'
^^^^^^^^^^^
См. демо.
(?:_[^_]+)?
является незахватывающей группой ((?:...)?
, не создаёт буфера в памяти для части совпадения), которая находит 1 или 0 совпадений _
, после которого следует 1 и более символов, отличных от _
([^_]+
).
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
При создании темы, используется плагин Custom Post Type UI
Первый раз решил применить pjax на сайте, но наткнулся на такую ошибку в консоле:
После обновления Wordpress (48) and Woocommerce (3
Задача состоит в том чтоб выводить ошибки валидации в плейсхолдер