あなたのサイトを確認しましたが、この正規表現はあなたの問題に有効です
/<\/font>([a-zA-Z0-9\'.: -]+)([0-9]{1,2}.+?[0-9]{1,2}[a,p,A,P,m,M]{2})-([0-9]{1,2}[.:]+?[0-9]{1,2}[a,p,A,P,m,M]{2}) <font color="red">Stream ([0-9]+)<\/font>/
preg_match_all; を使用する場合、 http://regexpal.com/で確認しました。出力配列の一致には、必要な情報が含まれます。この正規表現の一部の文字をエスケープして、php 変数に入れる必要があります。
PHP の有効なコード:
$match = array();
preg_match_all('/<\/font>([a-zA-Z0-9\'.: -]+)([0-9]{1,2}.+?[0-9]{1,2}[a,p,A,P,m,M]{2})-([0-9]{1,2}[.:]+?[0-9]{1,2}[a,p,A,P,m,M]{2}) <font color="red">Stream ([0-9]+)<\/font>/',file_get_contents("http://livestreamly.com/"),$match);
print_r($match);
出力の一部:
[1] => array(37) {
[0] => string(45) " MLB: Philadelphia Phillies at Miami Marlins "
[1] => string(40) " MLB: Minnesota Twins at Atlanta Braves "
[2] => string(39) " MLB: Cincinnati Reds at New York Mets "
[2] => array(37) {
[0] => string(14) "12.00am-3.00am"
[1] => string(14) "12.00am-3.00am"
[2] => string(14) "12.00am-3.00am"
[3] => string(14) "12:00am-3:00am"
[4] => string(14) "12.15am-2.15am"
[5] => string(14) "12.30AM-3.30AM"
[3] => array(37) {
[0] => string(1) "6"
[1] => string(1) "7"
[2] => string(1) "8"
[3] => string(1) "9"
[4] => string(2) "10"
使い方
[a-zA-Z0-9'.: -]+
最初に、az と AZ の文字、0 から 9 の数字を意味するサブパターンを探します。: または - 少なくとも 1 回以上発生する必要があります。名前が一致します。
([0-9]{1,2}.+?[0-9]{1,2})
後で、数値であり、1 桁または 2 桁の時間の最初の部分を探します。次に、貪欲な演算子を使用して、少なくとも 1 回は任意の文字にすることができます。次に、他の数字 (分) 少なくとも 1 桁または 2 桁。
[a,p,A,P,m,M]{2}
AM または am または pm または PM を担当し、AA または MM の場合もありますが、ここでは関係ありません。
<font color="red">Stream ([0-9]+)<\/font>
この行は、数値であり、少なくとも 1 桁以上である必要があるストリームのハンバーを取得する責任があります。