Отличить текст от ссылки

129
21 ноября 2020, 04:10

Есть форма ввода YouTube. В неё можно ввести поисковой запрос или вставить ссылку на видео YouTube. Как понять что именно было введено в форму для составления дальнейшего условия?

P.s: ссылки могут быть только такого типа https://www.youtube.com/watch?v=yre6iXvnONc

<input type="text" name="create--post--youtube">
<small>Введите название или вставьте ссылку видео YouTube</small>
<script>
$('input[name=create--post--youtube]').change(function(){
   var value = $(this).val();
   if (...) {
      console.info('Введён поисковой запрос');
   } else {
      console.info('Введена ссылка на видео YouTube');
   }
});
</script>
Answer 1

Символ | означает 'или'... т.е. тут (|s) записано ' ничего или "s" '

$('#moo').change(function(){ 
  var val = $(this).val(); 
  if ( val.match(/http(|s):\/\/www.youtube.com/gi) ) { 
    $('#demo').html('Введена ссылка на видео YouTube'); 
  } else if ( val.match(/http/gi) ){ 
    $('#demo').html('Внешняя ссылка!'); 
  } else { 
    $('#demo').html('Введён поисковый запрос'); 
  } 
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> 
 
<input id="moo" type="text" name="create--post--youtube"> 
<div>Введите название или вставьте ссылку видео YouTube</div> 
 
<p id="demo"></p>

READ ALSO
Блокировка Коллекции

Блокировка Коллекции

Мне нужно сделать блокировку чтения и записи, при этом, во время чтения происходит удаление элементов из коллекции List

95
Установка конкретных битов в байте. C#

Установка конкретных битов в байте. C#

Необходимо в байт записывать конкретные битыПричем данные еще разбиты на 4 кадра

102
Считать строки из cmd в переменные

Считать строки из cmd в переменные

Делаю небольшую оболочку на C# для программы, работающей из командной строкиОболочка - Windows Forms

151