@yischyk

Обрезать строку?

Входящие данные: $text = 'Коротко тут: [club3257980|читать]'

Исходящие: club3257980

Суть: найти часть строки между "[" и "|"

И еще при возможности, если кто знает, как сделать если в друг в строке есть несколько вставок вида [club3223423|sd], то сделать так, чтобы только первое значение достал, т.е. есть строка
также [club24542|sfnkfb] и здесь мы [club42324245255|dkgdjg]  получили...
. Как получить только club24542?
  • Вопрос задан
  • 49 просмотров
Решения вопроса 1
Попробуйте с помощью регулярки (?:\[([^\|]+)\|[^\]]+\])

Regex101

Пример кода

$re = '/(?:\[([^\|]+)\|[^\]]+\])/';
 
$text = 'также [club24542|sfnkfb] и здесь мы [club42324245255|dkgdjg]  получили... [dkwowo|ссылка]';
 
$matches = [];
 
preg_match($re, $text, $matches);
 
var_dump($matches[1]); // Первое совпадение


IdeOne
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы