страница, на которую вы ссылаетесь, не содержит кольцо, которое вы ищете? Но чтобы соответствовать этой строке в любом месте страницы, то вам нужно будет ...
/t=\S{42}/
Я не вижу никакой необходимости для символьных классов [...]
или в скобках моделей суба ...?
EDIT # 1
Однако, если вы пытаетесь извлечь что 42 символ маркера, то вы будет нужен шаблон в скобки суб ...
/t=(\S{42})/
EDIT # 2
Пример извлечения токена. Я изменил это с 42 до 43 символов, так как все ваши примеры, похоже, содержат токен из 43 символов.
// This is just some example text from which we want to extract the token...
$text = <<<EOD
SomeText=jkasdhHASGjajAHSKAK?asdjladljasdllkasdjllasdasdl
asdjasiSTARTHERE;t=vjVQa1PpcFMYuRsz10_H-1z41mWWe8d6ENEnBLE7gug%3DENDHEREasdasd
SomeMoreText;t=ThisIsTooShort%3Dklaksj
EOD;
if (preg_match('/;t=([a-zA-Z0-9_-]{43})%3D/',$text,$matches)) {
// Match... vjVQa1PpcFMYuRsz10_H-1z41mWWe8d6ENEnBLE7gug
echo 'TOKEN: '.$matches[1];
} else {
// No match
}
Я изменил шаблон как более ограничительный, чем любой несимметричный символ. Теперь это буква, число, символ подчеркивания или дефис. Теперь он должен заканчиваться на %3D
, а точка с запятой («;») перед «t =».
токен генерируется каждый раз, когда страница загружается и имеет длину 42, поэтому мне нужно захватить эту строку после t = –
. Я думаю, вам нужно уточнить свой вопрос ... вы пытаетесь _match_ эту последовательность символов (как указанному в вашем вопросе), возможно, используя 'preg_match()'? Или вы хотите _extract_ 42-символьный токен? Было бы желательно вставить текст, который вы пытаетесь сопоставить, поскольку эта страница не содержит этот шаблон. – MrWhite
это токен, который генерируется каждый раз, когда кто-то загружает страницу, поэтому не удается вставить точное соответствие для него, однако я хочу извлечь этот токен, а токен имеет следующий шаблон, он начинается с t =, заканчивается% 3D и имеет длину 42, надеюсь, что у меня есть смысл, текст выше был примером токена, сгенерированного –