<?php
// Function `parse_yturl()` from <http://stackoverflow.com/a/10524505/624466>
/**
* Check if the input string is a valid YouTube URL
* and try to extract the YouTube Video ID from it.
*
* @author Stephan Schmitz <eyecatchup@gmail.com>
* @param $url string The string that shall be checked.
* @return mixed YouTube Video ID, or (boolean) false.
*/
function parse_yturl($url) {
$pattern = '#^(?:https?://|//)?' # Optional URL scheme. Either http, or https, or protocol-relative.
. '(?:www\.|m\.)?' # Optional www or m subdomain.
. '(?:' # Group host alternatives:
. 'youtu\.be/' # Either youtu.be,
. '|youtube\.com/' # or youtube.com
. '(?:' # Group path alternatives:
. 'embed/' # Either /embed/,
. '|v/' # or /v/,
. '|watch\?v=' # or /watch?v=,
. '|watch\?.+&v=' # or /watch?other_param&v=
. ')' # End path alternatives.
. ')' # End host alternatives.
. '([\w-]{11})' # 11 characters (Length of Youtube video ids).
. '(?![\w-])#'; # Rejects if overlong id.
preg_match($pattern, $url, $matches);
return (isset($matches[1])) ? $matches[1] : false;
}
// Tests for function `parse_yturl()`
$testIds = [
'l8qdouU9cYE',
'_PqP1qHhsyM',
'3G3_im4RyI8',
'uqU4Mkd-_gU',
];
$testUrls = [
// Without scheme and subdomain (Domain: youtu.be, Path: /)
'youtu.be/%s',
// Without scheme, with subdomain (Domain: youtu.be, Path: /)
'www.youtu.be/%s',
// With HTTP scheme, without subdomain (Domain: youtu.be, Path: /)
'http://youtu.be/%s',
// With HTTP scheme and subdomain (Domain: youtu.be, Path: /)
'http://www.youtu.be/%s',
// With HTTPS scheme, without subdomain (Domain: youtu.be, Path: /)
'https://youtu.be/%s',
// With HTTPS scheme and subdomain (Domain: youtu.be, Path: /)
'https://www.youtu.be/%s',
// Without scheme and subdomain (Domain: youtube.com, Path: /embed)
'youtube.com/embed/%s',
'youtube.com/embed/%s&other_params',
// Without scheme, with subdomain (Domain: youtube.com, Path: /embed)
'www.youtube.com/embed/%s',
'www.youtube.com/embed/%s&other_params',
// With HTTP scheme, without subdomain (Domain: youtube.com, Path: /embed)
'http://youtube.com/embed/%s',
'http://youtube.com/embed/%s&other_params',
// With HTTP scheme and subdomain (Domain: youtube.com, Path: /embed)
'http://www.youtube.com/embed/%s',
'http://www.youtube.com/embed/%s&other_params',
// With HTTPS scheme, without subdomain (Domain: youtube.com, Path: /embed)
'https://youtube.com/embed/%s',
'https://youtube.com/embed/%s&other_params',
// With HTTPS scheme and subdomain (Domain: youtube.com, Path: /embed)
'https://www.youtube.com/embed/%s',
'https://www.youtube.com/embed/%s&other_params',
// Without scheme and subdomain (Domain: youtube.com, Path: /v)
'youtube.com/v/%s',
'youtube.com/v/%s&other_params',
// Without scheme, with subdomain (Domain: youtube.com, Path: /v)
'www.youtube.com/v/%s',
'www.youtube.com/v/%s&other_params',
// With HTTP scheme, without subdomain (Domain: youtube.com, Path: /v)
'http://youtube.com/v/%s',
'http://youtube.com/v/%s&other_params',
// With HTTP scheme and subdomain (Domain: youtube.com, Path: /v)
'http://www.youtube.com/v/%s',
'http://www.youtube.com/v/%s&other_params',
// With HTTPS scheme, without subdomain (Domain: youtube.com, Path: /v)
'https://youtube.com/v/%s',
'https://youtube.com/v/%s&other_params',
// With HTTPS scheme and subdomain (Domain: youtube.com, Path: /v)
'https://www.youtube.com/v/%s',
'https://www.youtube.com/v/%s&other_params',
// Without scheme and subdomain (Domain: youtube.com, Path: /watch)
'youtube.com/watch?v=%s',
'youtube.com/watch?v=%s&other_params',
'youtube.com/watch?other_params&v=%s',
'youtube.com/watch?other_params&v=%s&more_params',
// Without scheme, with subdomain (Domain: youtube.com, Path: /watch)
'www.youtube.com/watch?v=%s',
'www.youtube.com/watch?v=%s&other_params',
'www.youtube.com/watch?other_params&v=%s',
'www.youtube.com/watch?other_params&v=%s&more_params',
// With HTTP scheme, without subdomain (Domain: youtube.com, Path: /watch)
'http://youtube.com/watch?v=%s',
'http://youtube.com/watch?v=%s&other_params',
'http://youtube.com/watch?other_params&v=%s',
'http://youtube.com/watch?other_params&v=%s&more_params',
// With HTTP scheme and subdomain (Domain: youtube.com, Path: /watch)
'http://www.youtube.com/watch?v=%s',
'http://www.youtube.com/watch?v=%s&other_params',
'http://www.youtube.com/watch?other_params&v=%s',
'http://www.youtube.com/watch?other_params&v=%s&more_params',
// With HTTPS scheme, without subdomain (Domain: youtube.com, Path: /watch)
'https://youtube.com/watch?v=%s',
'https://youtube.com/watch?v=%s&other_params',
'https://youtube.com/watch?other_params&v=%s',
'https://youtube.com/watch?other_params&v=%s&more_params',
// With HTTPS scheme and subdomain (Domain: youtube.com, Path: /watch)
'https://www.youtube.com/watch?v=%s',
'https://www.youtube.com/watch?v=%s&other_params',
'https://www.youtube.com/watch?other_params&v=%s',
'https://www.youtube.com/watch?other_params&v=%s&more_params',
];
$results = [];
foreach ($testIds as $id) {
$results[$id] = [];
foreach ($testUrls as $str) {
$testString = sprintf($str, $id);
array_push($results[$id], [
'str' => $testString,
'id' => parse_yturl($testString),
]);
}
}
$matches = 0;
$errors = 0;
foreach ($results as $key => $val) {
$testId = $key;
printf('# Testing strings for id "%s"' . PHP_EOL . PHP_EOL, $testId);
foreach ($val as $res) {
if ($res['id'] !== $testId) {
$errors++;
$result = 'no match';
} else {
$matches++;
$result = $res['id'];
}
printf(' Result: %s, String: %s' . PHP_EOL, $result, $res['str']);
}
print PHP_EOL;
}
printf('Done. %d assertation(s), %d error(s)' . PHP_EOL, $matches, $errors);
Abusive script
This script was stopped while abusing our resources
- Output for 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.32, 7.3.0 - 7.3.20, 7.4.0 - 7.4.8, 8.1.23 - 8.1.29, 8.2.10 - 8.2.23, 8.3.0 - 8.3.11
- # Testing strings for id "l8qdouU9cYE"
Result: l8qdouU9cYE, String: youtu.be/l8qdouU9cYE
Result: l8qdouU9cYE, String: www.youtu.be/l8qdouU9cYE
Result: l8qdouU9cYE, String: http://youtu.be/l8qdouU9cYE
Result: l8qdouU9cYE, String: http://www.youtu.be/l8qdouU9cYE
Result: l8qdouU9cYE, String: https://youtu.be/l8qdouU9cYE
Result: l8qdouU9cYE, String: https://www.youtu.be/l8qdouU9cYE
Result: l8qdouU9cYE, String: youtube.com/embed/l8qdouU9cYE
Result: l8qdouU9cYE, String: youtube.com/embed/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: www.youtube.com/embed/l8qdouU9cYE
Result: l8qdouU9cYE, String: www.youtube.com/embed/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: http://youtube.com/embed/l8qdouU9cYE
Result: l8qdouU9cYE, String: http://youtube.com/embed/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: http://www.youtube.com/embed/l8qdouU9cYE
Result: l8qdouU9cYE, String: http://www.youtube.com/embed/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: https://youtube.com/embed/l8qdouU9cYE
Result: l8qdouU9cYE, String: https://youtube.com/embed/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: https://www.youtube.com/embed/l8qdouU9cYE
Result: l8qdouU9cYE, String: https://www.youtube.com/embed/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: youtube.com/v/l8qdouU9cYE
Result: l8qdouU9cYE, String: youtube.com/v/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: www.youtube.com/v/l8qdouU9cYE
Result: l8qdouU9cYE, String: www.youtube.com/v/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: http://youtube.com/v/l8qdouU9cYE
Result: l8qdouU9cYE, String: http://youtube.com/v/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: http://www.youtube.com/v/l8qdouU9cYE
Result: l8qdouU9cYE, String: http://www.youtube.com/v/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: https://youtube.com/v/l8qdouU9cYE
Result: l8qdouU9cYE, String: https://youtube.com/v/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: https://www.youtube.com/v/l8qdouU9cYE
Result: l8qdouU9cYE, String: https://www.youtube.com/v/l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: youtube.com/watch?v=l8qdouU9cYE
Result: l8qdouU9cYE, String: youtube.com/watch?v=l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: youtube.com/watch?other_params&v=l8qdouU9cYE
Result: l8qdouU9cYE, String: youtube.com/watch?other_params&v=l8qdouU9cYE&more_params
Result: l8qdouU9cYE, String: www.youtube.com/watch?v=l8qdouU9cYE
Result: l8qdouU9cYE, String: www.youtube.com/watch?v=l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: www.youtube.com/watch?other_params&v=l8qdouU9cYE
Result: l8qdouU9cYE, String: www.youtube.com/watch?other_params&v=l8qdouU9cYE&more_params
Result: l8qdouU9cYE, String: http://youtube.com/watch?v=l8qdouU9cYE
Result: l8qdouU9cYE, String: http://youtube.com/watch?v=l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: http://youtube.com/watch?other_params&v=l8qdouU9cYE
Result: l8qdouU9cYE, String: http://youtube.com/watch?other_params&v=l8qdouU9cYE&more_params
Result: l8qdouU9cYE, String: http://www.youtube.com/watch?v=l8qdouU9cYE
Result: l8qdouU9cYE, String: http://www.youtube.com/watch?v=l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: http://www.youtube.com/watch?other_params&v=l8qdouU9cYE
Result: l8qdouU9cYE, String: http://www.youtube.com/watch?other_params&v=l8qdouU9cYE&more_params
Result: l8qdouU9cYE, String: https://youtube.com/watch?v=l8qdouU9cYE
Result: l8qdouU9cYE, String: https://youtube.com/watch?v=l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: https://youtube.com/watch?other_params&v=l8qdouU9cYE
Result: l8qdouU9cYE, String: https://youtube.com/watch?other_params&v=l8qdouU9cYE&more_params
Result: l8qdouU9cYE, String: https://www.youtube.com/watch?v=l8qdouU9cYE
Result: l8qdouU9cYE, String: https://www.youtube.com/watch?v=l8qdouU9cYE&other_params
Result: l8qdouU9cYE, String: https://www.youtube.com/watch?other_params&v=l8qdouU9cYE
Result: l8qdouU9cYE, String: https://www.youtube.com/watch?other_params&v=l8qdouU9cYE&more_params
# Testing strings for id "_PqP1qHhsyM"
Result: _PqP1qHhsyM, String: youtu.be/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: www.youtu.be/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://youtu.be/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://www.youtu.be/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://youtu.be/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://www.youtu.be/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: youtube.com/embed/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: youtube.com/embed/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: www.youtube.com/embed/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: www.youtube.com/embed/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: http://youtube.com/embed/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://youtube.com/embed/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: http://www.youtube.com/embed/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://www.youtube.com/embed/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: https://youtube.com/embed/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://youtube.com/embed/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: https://www.youtube.com/embed/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://www.youtube.com/embed/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: youtube.com/v/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: youtube.com/v/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: www.youtube.com/v/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: www.youtube.com/v/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: http://youtube.com/v/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://youtube.com/v/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: http://www.youtube.com/v/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://www.youtube.com/v/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: https://youtube.com/v/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://youtube.com/v/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: https://www.youtube.com/v/_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://www.youtube.com/v/_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: youtube.com/watch?v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: youtube.com/watch?v=_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: youtube.com/watch?other_params&v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: youtube.com/watch?other_params&v=_PqP1qHhsyM&more_params
Result: _PqP1qHhsyM, String: www.youtube.com/watch?v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: www.youtube.com/watch?v=_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: www.youtube.com/watch?other_params&v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: www.youtube.com/watch?other_params&v=_PqP1qHhsyM&more_params
Result: _PqP1qHhsyM, String: http://youtube.com/watch?v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://youtube.com/watch?v=_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: http://youtube.com/watch?other_params&v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://youtube.com/watch?other_params&v=_PqP1qHhsyM&more_params
Result: _PqP1qHhsyM, String: http://www.youtube.com/watch?v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://www.youtube.com/watch?v=_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: http://www.youtube.com/watch?other_params&v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: http://www.youtube.com/watch?other_params&v=_PqP1qHhsyM&more_params
Result: _PqP1qHhsyM, String: https://youtube.com/watch?v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://youtube.com/watch?v=_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: https://youtube.com/watch?other_params&v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://youtube.com/watch?other_params&v=_PqP1qHhsyM&more_params
Result: _PqP1qHhsyM, String: https://www.youtube.com/watch?v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://www.youtube.com/watch?v=_PqP1qHhsyM&other_params
Result: _PqP1qHhsyM, String: https://www.youtube.com/watch?other_params&v=_PqP1qHhsyM
Result: _PqP1qHhsyM, String: https://www.youtube.com/watch?other_params&v=_PqP1qHhsyM&more_params
# Testing strings for id "3G3_im4RyI8"
Result: 3G3_im4RyI8, String: youtu.be/3G3_im4RyI8
Result: 3G3_im4RyI8, String: www.youtu.be/3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://youtu.be/3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://www.youtu.be/3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://youtu.be/3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://www.youtu.be/3G3_im4RyI8
Result: 3G3_im4RyI8, String: youtube.com/embed/3G3_im4RyI8
Result: 3G3_im4RyI8, String: youtube.com/embed/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: www.youtube.com/embed/3G3_im4RyI8
Result: 3G3_im4RyI8, String: www.youtube.com/embed/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: http://youtube.com/embed/3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://youtube.com/embed/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: http://www.youtube.com/embed/3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://www.youtube.com/embed/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: https://youtube.com/embed/3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://youtube.com/embed/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: https://www.youtube.com/embed/3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://www.youtube.com/embed/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: youtube.com/v/3G3_im4RyI8
Result: 3G3_im4RyI8, String: youtube.com/v/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: www.youtube.com/v/3G3_im4RyI8
Result: 3G3_im4RyI8, String: www.youtube.com/v/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: http://youtube.com/v/3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://youtube.com/v/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: http://www.youtube.com/v/3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://www.youtube.com/v/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: https://youtube.com/v/3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://youtube.com/v/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: https://www.youtube.com/v/3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://www.youtube.com/v/3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: youtube.com/watch?v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: youtube.com/watch?v=3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: youtube.com/watch?other_params&v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: youtube.com/watch?other_params&v=3G3_im4RyI8&more_params
Result: 3G3_im4RyI8, String: www.youtube.com/watch?v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: www.youtube.com/watch?v=3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: www.youtube.com/watch?other_params&v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: www.youtube.com/watch?other_params&v=3G3_im4RyI8&more_params
Result: 3G3_im4RyI8, String: http://youtube.com/watch?v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://youtube.com/watch?v=3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: http://youtube.com/watch?other_params&v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://youtube.com/watch?other_params&v=3G3_im4RyI8&more_params
Result: 3G3_im4RyI8, String: http://www.youtube.com/watch?v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://www.youtube.com/watch?v=3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: http://www.youtube.com/watch?other_params&v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: http://www.youtube.com/watch?other_params&v=3G3_im4RyI8&more_params
Result: 3G3_im4RyI8, String: https://youtube.com/watch?v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://youtube.com/watch?v=3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: https://youtube.com/watch?other_params&v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://youtube.com/watch?other_params&v=3G3_im4RyI8&more_params
Result: 3G3_im4RyI8, String: https://www.youtube.com/watch?v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://www.youtube.com/watch?v=3G3_im4RyI8&other_params
Result: 3G3_im4RyI8, String: https://www.youtube.com/watch?other_params&v=3G3_im4RyI8
Result: 3G3_im4RyI8, String: https://www.youtube.com/watch?other_params&v=3G3_im4RyI8&more_params
# Testing strings for id "uqU4Mkd-_gU"
Result: uqU4Mkd-_gU, String: youtu.be/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: www.youtu.be/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://youtu.be/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://www.youtu.be/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://youtu.be/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://www.youtu.be/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: youtube.com/embed/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: youtube.com/embed/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: www.youtube.com/embed/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: www.youtube.com/embed/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: http://youtube.com/embed/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://youtube.com/embed/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: http://www.youtube.com/embed/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://www.youtube.com/embed/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: https://youtube.com/embed/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://youtube.com/embed/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: https://www.youtube.com/embed/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://www.youtube.com/embed/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: youtube.com/v/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: youtube.com/v/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: www.youtube.com/v/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: www.youtube.com/v/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: http://youtube.com/v/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://youtube.com/v/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: http://www.youtube.com/v/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://www.youtube.com/v/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: https://youtube.com/v/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://youtube.com/v/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: https://www.youtube.com/v/uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://www.youtube.com/v/uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: youtube.com/watch?v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: youtube.com/watch?v=uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: youtube.com/watch?other_params&v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: youtube.com/watch?other_params&v=uqU4Mkd-_gU&more_params
Result: uqU4Mkd-_gU, String: www.youtube.com/watch?v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: www.youtube.com/watch?v=uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: www.youtube.com/watch?other_params&v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: www.youtube.com/watch?other_params&v=uqU4Mkd-_gU&more_params
Result: uqU4Mkd-_gU, String: http://youtube.com/watch?v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://youtube.com/watch?v=uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: http://youtube.com/watch?other_params&v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://youtube.com/watch?other_params&v=uqU4Mkd-_gU&more_params
Result: uqU4Mkd-_gU, String: http://www.youtube.com/watch?v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://www.youtube.com/watch?v=uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: http://www.youtube.com/watch?other_params&v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: http://www.youtube.com/watch?other_params&v=uqU4Mkd-_gU&more_params
Result: uqU4Mkd-_gU, String: https://youtube.com/watch?v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://youtube.com/watch?v=uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: https://youtube.com/watch?other_params&v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://youtube.com/watch?other_params&v=uqU4Mkd-_gU&more_params
Result: uqU4Mkd-_gU, String: https://www.youtube.com/watch?v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://www.youtube.com/watch?v=uqU4Mkd-_gU&other_params
Result: uqU4Mkd-_gU, String: https://www.youtube.com/watch?other_params&v=uqU4Mkd-_gU
Result: uqU4Mkd-_gU, String: https://www.youtube.com/watch?other_params&v=uqU4Mkd-_gU&more_params
Done. 216 assertation(s), 0 error(s)
- Output for 4.4.2 - 4.4.9, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29
- Parse error: syntax error, unexpected '[' in /in/GEDT0 on line 34
Process exited with code 255. - Output for 4.3.0 - 4.3.1, 4.3.5 - 4.3.11, 4.4.0 - 4.4.1, 5.0.0 - 5.0.5
- Parse error: parse error, unexpected '[' in /in/GEDT0 on line 34
Process exited with code 255. - Output for 4.3.2 - 4.3.4
- Parse error: parse error in /in/GEDT0 on line 34
Process exited with code 255.
preferences:
118.84 ms | 429 KiB | 5 Q