Я вызываю вызов функции в библиотеку, которая возвращает неправильный массив json. Я могу обойти это, если я смогу получить preg, чтобы извлечь часть, которую я хочу.
Массив - беспорядочный беспорядок, но глубоко погруженный в него - это строка, которая выглядит так:
token=??????,
Мне нужно написать preg, чтобы захватить символы, представленные вопросительными знаками. Я написал это, но не получаю часть текста, который я хочу:
$token = preg_match('@^(?:token=)?([^,]+)@i', $badJson, $matches);
Может кто-нибудь мне помочь? Благодарю.
Вы можете попробовать: /token=([^,]+)/i
и использовать первый подзадач, чтобы извлечь токен. Быть более конкретным - это, как правило, хорошая идея с регулярным выражением (например, имеет ли токен установленную длину? Содержит ли она только шестнадцатеричные символы и т.д.),
Замечание по сайту: https://leaverou.github.io/regexplained/ - отличный сайт для тестирования регулярных выражений.