2
<div class="information di-ib mt4">
Movie (1 eps)<br>
Aug 2016 - Aug 2016<br>
380,496 members
</div></div>
I want to make preg_match_all
in this code, but I do not know how to do in particular the number of episodes.
2
<div class="information di-ib mt4">
Movie (1 eps)<br>
Aug 2016 - Aug 2016<br>
380,496 members
</div></div>
I want to make preg_match_all
in this code, but I do not know how to do in particular the number of episodes.
2
If the text has only data from a movie, you can use the function preg_match
:
if (preg_match("/\((?P<qtd>\d+) eps\)/", $data, $matches))
{
echo "O filme possui ", $matches["qtd"], " episódio(s)", PHP_EOL;
}
The output for the text in question would be:
O filme possui 1 episódio(s)
See working on Ideone.
However, if the text contains information from more than one actual film it will be necessary to use the preg_match_all
:
if (preg_match_all("/\((?P<qtd>\d+) eps\)/", $data, $matches))
{
print_r($matches["qtd"]);
}
The only difference is $matches["qtd"]
will be a list of values for all films.
See working on Ideone.
The regular expression used in both cases is:
/\((?P<qtd>\d+) eps\)/
Her goal is to find all the groups in the format (X eps)
, being X
an integer value.
\(
escapes the character (
and indicates the start of the desired group;(?P<qtd>\d+)
captures any sequence of numbers, generating the named group qtd
;eps
makes it necessary for the sequence of numbers to be followed by that text;\)
escapes the character )
and indicates the end of the desired group;thank you so much for your help
If possible, mark the answer as accepted by pressing the button ✓ on the left side of the answer. Still, if you thought the answer was good, you can vote positively on it by pressing the icon ^, also on the left side of the answer.
0
Using preg_match_all
:
<?php
$dado = "
<div class='information di-ib mt4'>
Movie (1 eps)<br>
Aug 2016 - Aug 2016<br>
380,496 members
</div>";
preg_match_all("/(?<=\()[\d]/",$dado,$saida,PREG_PATTERN_ORDER);
print_r($saida[0]);//Array ( [0] => 1 )
?>
Browser other questions tagged php
You are not signed in. Login or sign up in order to post.
First, do the [tour] to learn how to use the site correctly. Secondly, you just want to get the number of episodes, in case, the value 1?
– Woss
yes that’s what I want
– Diogo Adao
And that value will always be followed by the word
eps
?– Woss
yes will always be followed by eps
– Diogo Adao