2015-11-10 2 views
1

У меня есть несериализованный массив, я пытаюсь изменить строку в массиве и удалить символы, идущие и включающие дефис.PHP: Использование preg_match для обрезки символов, идущих '-'

Строка выглядит следующим образом, его длина не всегда регулярно, хотя «SOMETEXT - 150 х 50»

Я попытался регулярное выражение, но он не работает, это моя первая попытка создания регулярной выражение.

$item['options']['Size'] = preg_replace('/^[^-]*,\s*/', '', $item); 

Если кто-то не возражает, указывая на меня в правильном направлении, это будет фантастически.

+0

Каков ваш желаемый результат? ваш вопрос неясен –

+0

Извините, я пытаюсь удалить все символы, проходящие через дефис в строке: «SOMETEXT - 150 x 50» –

ответ

2
preg_replace('/-[^-]*$/', '', $item); 

Это должно сделать это за вас.

+0

Это замечательно. Это будет довольно регулярной задачей для меня, из интереса, как бы настроить этот reg ex, чтобы удалить все, что было перед дефисом? Я пытаюсь понять, что такое синтаксис. Спасибо –

+1

@LiamFell '^ [^ -] *' должен это сделать – vks

+0

Итак, полная функция будет выглядеть так? preg_replace ('/^[^ -] * $ /', '', $ item); –

Смежные вопросы