удалить часть строки после специального символа

Что я пытаюсь сделать, это удалить * и число после него из строки.

$string = 'something*10';
$string2 = 'something*1';

должен выводить

something
something

не

something*10
something*1

-4

Решение

$string = current(explode('*', 'something*10'));

Как найдено здесь: REF

Пример выполнения: IDEONE

1

Другие решения

Ты можешь использовать preg_replace с этим регулярным выражением /\*\d+/ чтобы решить вашу проблему.

Другие ответы предполагают, что за * следуют цифры, что неверно в зависимости от ваших требований.

0

Или с регулярными выражениями:

$string = 'something*10';

echo preg_replace( '/\*\d+/', '', $string ); // something

Если у вас есть список слов, вы можете передать второй аргумент как массив, но вместо echo вам придется использовать var_dump (), print_r () или даже выполнить итерацию.

0

Попробуйте приведенный ниже код, который легко

echo $string = substr($string, 0, strpos( $string, '*'));
echo $string2 = substr($string2, 0, strpos( $string2, '*'));

Дайте мне знать, если работаете. Он должен работать. Thnx

Ссылка: substr, strpos

0
По вопросам рекламы [email protected]