2014-01-15 2 views
0

Существует веб-страницы, и это все, что вphp - Как найти случайную строку в источнике страницы?

//html code 
    random number: 76582377 
    //html code 

Каждый раз, когда страница обновляется, случайное число новое, а также.

Как я могу получить случайное число, так как оно динамическое? Это всегда 8 букв. Я использую cURL, если это поможет.

Спасибо.

+0

Строка 'random number:' буквально предшествует 8-значному номеру? –

+0

Вы можете использовать DOM. Каков ваш HTML-код, как –

+0

regex - это дроид, которого вы ищете, но мы не можем помочь без полного или релевантного html-кода. – Babblo

ответ

1

Вот один пример с регулярными выражениями. Это будет соответствовать random number:, а затем пробел 1+, а затем 8-значный буквенно-цифровой ([\w]{8}), который мы хотим сопоставить. Если мы просто хотим, чтобы это были цифры (а не буквенно-цифровые), вы можете изменить \w на \d. Кроме того, вы позволяете всему этому быть нечувствительным к регистру (RandoM nUMBer: 12345678), добавив i после окончания /.

$html = "<html>\nrandom number: 76582377\n</html"; 
if(preg_match('/random number:\s+([\w]{8})/', $html, $matches)) { 
    $code = $matches[1]; 

    var_dump($code); 
    // string(8) "76582377" 
} 

Если random code всегда в определенном элементе, было бы более эффективно использовать DOMDocument хотя. Мы не можем помочь без примера.

+0

Пожалуйста, не пропустите мою заметку о 'DOMDocument', OP. Если ваш код всегда отображается в случайном числе: 12345678 '(или что-то подобное), то вы не должны использовать RegEx. – Sam

+0

Анализ HTML с регулярным выражением? Я не верю в верную практику. :( –

+0

@ CoderX90 Вы не видите мою заметку и комментарий? Это лучший ответ, который мы можем дать с вопросом OP .. Поскольку OP не предоставляет никакой структуры HTML, это в значительной степени анализирует строку с регулярным выражением. – Sam

Смежные вопросы