Javascript 将此正则表达式代码集成到现有php代码中

Javascript 将此正则表达式代码集成到现有php代码中,javascript,php,regex,video,youtube,Javascript,Php,Regex,Video,Youtube,我正在使用以下代码为最新视频输出嵌入视频: $args = array( 'numberposts' => '1', 'tax_query' => array( array( 'taxonomy' => 'post_format', 'field' => 'slug', 'terms' => 'post-format-video' )

我正在使用以下代码为最新视频输出嵌入视频:

$args = array( 
    'numberposts' => '1', 
    'tax_query' => array(
        array(
            'taxonomy' => 'post_format',
            'field' => 'slug',
            'terms' => 'post-format-video'
        )
    ),
    'meta_query' => array(
        array(
            'key' => 'dt_video',
            'value' => '',
            'compare' => '!='
        )
    )
);
$latest_video = wp_get_recent_posts($args); // Get latest video in 'video' post format
$latest_video_id = $latest_video['0']['ID']; // Get latest video ID
$video_url = htmlspecialchars(get_post_meta($latest_video_id, 'dt_video', true));
echo '<iframe width="180" height="101" src="'.$video_url.'?rel=0&output=embed" frameborder="0" allowfullscreen></iframe>';
但是,我不确定如何将其实现到原始代码中,以便更改输出URL的格式。有人能告诉我如何做到这一点吗?

像这样:

$video_url = "http://www.youtube.com/watch?v=l4X2hQC32NA&feature=g-all-u&context=G258729eFAAAAAAAAHAA?rel=0";
$search  = '#(?:href="https?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com(?:\/embed\/|\/v\/|\/watch?.*?v=))([\w\-]{10,12}).*$#x';
$replace = "http://www.youtube.com/embed/$1";
preg_match_all($search, $video_url, $matches);
$embedded_video_url = preg_replace($search, $replace, $video_url) ;
echo '<iframe width="180" height="101" src="'.$embedded_video_url.'" frameborder="0" allowfullscreen></iframe>';
$video\u url=”http://www.youtube.com/watch?v=l4X2hQC32NA&feature=g-all-u&context=G258729EFAAAAAHAA?rel=0”;
$search='#(?:href=“https:\/\/)?(?:www\)?(?:youtu\.be\/;youtube\.com(?:\/embed\//v\//watch?*?v=)([\w\-]{10,12})。*$\x';
$replace=”http://www.youtube.com/embed/$1";
preg_match_all($search,$video_url,$matches);
$embedded\u video\u url=preg\u replace($search,$replace,$video\u url);
回声';

只需使用您自己的
$video\u url

谢谢。我必须去掉第三行中的
http://
,因为它添加了不必要的内容:
http://http//www.youtube.com/embed/l4X2hQC32NA
但现在它正在工作。
$video_url = "http://www.youtube.com/watch?v=l4X2hQC32NA&feature=g-all-u&context=G258729eFAAAAAAAAHAA?rel=0";
$search  = '#(?:href="https?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com(?:\/embed\/|\/v\/|\/watch?.*?v=))([\w\-]{10,12}).*$#x';
$replace = "http://www.youtube.com/embed/$1";
preg_match_all($search, $video_url, $matches);
$embedded_video_url = preg_replace($search, $replace, $video_url) ;
echo '<iframe width="180" height="101" src="'.$embedded_video_url.'" frameborder="0" allowfullscreen></iframe>';