0

私は現在、javascript を介して正規表現を使用して YT ビデオ ID を抽出する作業を行っています。私は実用的な例を持っています。しかし、使用する代わりにvar exaxmpleYoutubeURLsIDリンクをコピーして ajax を介して 11 桁を表示できる入力フィールドを作成する方法はありますか? これが私のJSFIDDLEです

var youtubePattern = /https?:\/\/(?:[0-9A-Z-]+\.)?(?:youtu\.be\/|youtube\.com(?:\/embed\/|\/v\/|\/watch\?v=|\/ytscreeningroom\?v=|\/feeds\/api\/videos\/|\/user\S*[^\w\-\s]|\S*[^\w\-\s]))([\w\-]{11})[?=&+%\w-]*/ig;

var exmpleYouTubeURLs = [
    "http://www.youtube.com/embed/NLqAF9hrVbY",
];

// Extract the YouTube ID 
function linkifyYouTubeURLs(text) {
    return text.replace(youtubePattern, '$1');
}

for(i=0; i < exmpleYouTubeURLs.length; i++) {
    document.writeln(i + ". " + linkifyYouTubeURLs(exmpleYouTubeURLs[i]) + "<br>");
}
4

1 に答える 1

1

これが欲しいですか?

<textarea id="links"></textarea>
<input type="button" onclick="extractLinks()" value="Extract" />
<div id="outputDiv"></div>

<script>
    function extractLinks() {

        var youtubePattern = /https?:\/\/(?:[0-9A-Z-]+\.)?(?:youtu\.be\/|youtube\.com(?:\/embed\/|\/v\/|\/watch\?v=|\/ytscreeningroom\?v=|\/feeds\/api\/videos\/|\/user\S*[^\w\-\s]|\S*[^\w\-\s]))([\w\-]{11})[?=&+%\w-]*/ig;

        var exmpleYouTubeURLs = document.getElementById('links').value.split('\n');
        var output = document.getElementById('outputDiv');

        function linkifyYouTubeURLs(text) {
            return text.replace(youtubePattern, '$1');
        }

        output.innerHTML = '';
        for(i=0; i < exmpleYouTubeURLs.length; i++) {
             output.innerHTML += i + ". " + linkifyYouTubeURLs(exmpleYouTubeURLs[i]) + "<br >";
        }
    }
</script>
于 2013-02-09T05:30:06.657 に答える