Я хочу извлечь из видео-ссылки YouTube.Строка регулярного выражения после строки
string youtubelink = richTextBox1.Text;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(youtubelink);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
string data = reader.ReadToEnd();
Regex views = new Regex("watch-view-count\">" + @"\d+\s\d+");
Match v = views.Match(data);
richTextBox1.Text = Regex.Replace(v.ToString(),"watch-view-count\">", "");
Но моя проблема в том, что "@" \ d + \ s \ d + ");" например, когда у видео больше представлений, они не будут отображаться, потому что этот код показывает только xxx xxx-представления (то же самое работает наоборот, если я добавлю еще одну строку, а видео будет иметь меньше просмотров, они также не будут отображаться) Есть ли трюк для регулярного выражения, чтобы предотвратить это? Благодарю.
Я настоятельно рекомендую использовать _not_ использование скрепок экрана, но вместо этого [использовать API YouTube] (http://stackoverflow.com/questions/24347078/retrieving-individual-videos-view-count-youtube-api-v3-0- Javascript). –
+1 к предложению Уве и независимо, я бы избегал регулярного выражения с HTML и использовал парсер HTML, например [HTML Agility Pack] (https://htmlagilitypack.codeplex.com/) – keyboardP