Задать вопрос
@yischyk

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

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

Исходящие: club3257980

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

И еще при возможности, если кто знает, как сделать если в друг в строке есть несколько вставок вида [club3223423|sd], то сделать так, чтобы только первое значение достал, т.е. есть строка
также [club24542|sfnkfb] и здесь мы [club42324245255|dkgdjg]  получили...
. Как получить только club24542?
  • Вопрос задан
  • 51 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Попробуйте с помощью регулярки (?:\[([^\|]+)\|[^\]]+\])

Regex101

Пример кода

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


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

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

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