Regular Expressions 101

Save & Share

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8
  • .NET 7.0 (C#)
  • Rust
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests

Tools

Sponsors
There are currently no sponsors. Become a sponsor today!
An explanation of your regex will be automatically generated as you type.
Detailed match information will be displayed here automatically.
  • All Tokens
  • Common Tokens
  • General Tokens
  • Anchors
  • Meta Sequences
  • Quantifiers
  • Group Constructs
  • Character Classes
  • Flags/Modifiers
  • Substitution
  • A single character of: a, b or c
    [abc]
  • A character except: a, b or c
    [^abc]
  • A character in the range: a-z
    [a-z]
  • A character not in the range: a-z
    [^a-z]
  • A character in the range: a-z or A-Z
    [a-zA-Z]
  • Any single character
    .
  • Alternate - match either a or b
    a|b
  • Any whitespace character
    \s
  • Any non-whitespace character
    \S
  • Any digit
    \d
  • Any non-digit
    \D
  • Any word character
    \w
  • Any non-word character
    \W
  • Non-capturing group
    (?:...)
  • Capturing group
    (...)
  • Zero or one of a
    a?
  • Zero or more of a
    a*
  • One or more of a
    a+
  • Exactly 3 of a
    a{3}
  • 3 or more of a
    a{3,}
  • Between 3 and 6 of a
    a{3,6}
  • Start of string
    ^
  • End of string
    $
  • A word boundary
    \b
  • Non-word boundary
    \B

Regular Expression

/
/

Test String

Code Generator

Generated Code

using System; using System.Text.RegularExpressions; public class Example { public static void Main() { string pattern = @"alt=""(.+?)"""; string input = @" <?xml version=""1.0"" encoding=""utf-8""?> <!DOCTYPE html PUBLIC ""-//WAPFORUM//DTD XHTML Mobile 1.0//EN"" ""http://www.wapforum.org/DTD/xhtml-mobile10.dtd""> <html xmlns=""http://www.w3.org/1999/xhtml"" class=""no_js""> <head> <meta name=""viewport"" content=""width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"" /> <meta http-equiv=""content-type"" content=""text/html; charset=utf-8"" /> <meta name=""format-detection"" content=""telephone=no"" /> <meta http-equiv=""X-UA-Compatible"" content=""IE=edge"" /> <meta name=""MobileOptimized"" content=""176"" /> <meta name=""HandheldFriendly"" content=""True"" /> <base id=""base""> <meta name=""robots"" content=""noindex,nofollow"" /> <title>Павел Дуров</title> <script> document.querySelector('html').setAttribute('class', 'js_yes'); </script> <script type=""text/javascript""> <!-- (function(k,a,d,e,f){function l(){var c=function(){var b=!1;try{b=new XMLHttpRequest}catch(a){try{b=new ActiveXObject(""Msxml2.XMLHTTP"")}catch(d){try{b=new ActiveXObject(""Microsoft.XMLHTTP"")}catch(c){b=!1}}}return b?e:f}(),g=function(){var b=k.createElement(""div"");b.innerHTML='<input type=""file"" />';b=b.getElementsByTagName(""input"")[0];return""file""!=b.type||b.disabled?f:e}(),h=""ontouchstart""in a?e:f,m;try{m=typeof navigator.geolocation!==d?e:typeof a.google!==d&&typeof google.gears!==d?e:typeof device!==d&&typeof device.getServiceObject!==d?e:typeof Mojo!==d&&""Mojo.Service.Request""!==typeof Mojo.Service.Request?e:f}catch(p){m=f}var l=function(b){try{var d=a.Audio?new Audio:k.createElement(""audio"");if(d.canPlayType&&d.canPlayType(b)&&""no""!=d.canPlayType(b))return e}catch(c){}return f}(""audio/mpeg""),n=function(b){try{for(var a=k.createElement(""div""),c=0,g=[""webkit"",""Moz"",""ms"",""O"",""],h=g.length;c<h;c++){var l=g[c],m=l?l+b:b.toLowerCase();if(typeof a.style[m]!==d)return e}return f}catch(n){return f}}(""Transform"");return c+g+h+m+l+n+((a.XMLHttpRequest||a.XDomainRequest)&&(a.FormData||a.FileReader&&(a.XMLHttpRequest&&XMLHttpRequest.sendAsBinary||a.ArrayBuffer&&a.Uint8Array&&(a.MozBlobBuilder||a.WebKitBlobBuilder||a.BlobBuilder)))?e:f)}var c=a.screen,g=c.width||0,c=c.height||0,n=a.devicePixelRatio||1,p=(k.cookie.match(/(^|;\s+)remixmdevice=([^;]+)/)||[])[2]||"",h=p.split(""/"");p&&g==h[0]&&c==h[1]&&7==h[3].length||(g=[g,c,n,l()].join(""/""),k.cookie=""remixmdevice=; expires=""+(new Date(0)).toUTCString()+""; path=/"",k.cookie=""remixmdevice=""+g+""; expires=""+(new Date((new Date).getTime()+7776E6)).toUTCString()+""; path=/; domain=.vk.com"",location.replace(location.toString()))})(document,window,""undefined"",""!"",""-"");(function(a,d){var c=a.hash||"",b=c.substr(2);""#/""==c.substr(0,2)&&!d&&(b.match(/^\/*(away|login)(\.php)?([^a-z0-9\.]|$)/)&&(b=""),a.replace(a.protocol+""//""+a.host+""/""+b))})(location); //--> </script> <link type=""text/css"" rel=""stylesheet"" href=""/css/s_c.css?244""></link> <link type=""text/css"" rel=""stylesheet"" media=""only screen"" href=""/css/s_yzg.css?168""></link> <link rel=""shortcut icon"" href=""/images/faviconnew.ico?5""></link> <link rel=""canonical"" href=""http://vk.com/durov""></link><link rel=""alternate"" href=""android-app://com.vkontakte.android/vkontakte/m.vk.com/durov"" /> </head> <body id=""vk"" class=""_hover vk_stickers_hints_support_no opera_mini_no vk_al_no""> <div id=""vk_utils""></div> <div id=""vk_head"" class=""mhead""> <div class=""hb_wrap""><div class=""hb_btn"">&nbsp;</div></div> </div> <div id=""vk_wrap""> <div id=""l""></div> <div id=""m""> <div id=""mhead"" class=""mhead""> <a href=""/"" accesskey=""*"" class=""hb_wrap mhb_home mhb_vkhome""> <div class=""hb_btn mhi_home mhi_vkhome"">&nbsp;</div> </a> <a href=""/login?to=ZHVyb3Y-"" class=""hb_wrap mhb_notify"" accesskey=""#""> <div class=""hb_btn""> <em class=""mh_btn_label"">войти</em> </div> </a> <div class=""hb_wrap mhb_back al_back""><h1 class=""hb_btn mh_header"">Павел</h1></div></div> <div id=""mcont"" class=""mcont""><div class=""pcont fit_box""> <div class=""owner_panel profile_panel""> <a href=""/photo1_376599151?rev=1&from=profile""><img src=""http://cs629231.vk.me/v629231001/c542/fcMCbfjDsv0.jpg"" class=""pp_img"" alt=""Павел Дуров"" style=""background-image:url(http://cs629231.vk.me/v629231001/c543/FfB--bOEVOY.jpg)"" /></a> <div class=""pp_cont""> <h2 class=""op_header"">Павел Дуров<b class=""verified""></b></h2> <div class=""pp_last_activity""></div> <div class=""pp_status"">道德經</div> <div class=""pp_info"">31 год, Санкт-Петербург</div> </div> <div class=""op_block""><a class=""wide_link pp_auth_link"" href=""/login?to=d3JpdGUx"">Чтобы отправить сообщение <span class=""pp_auth_link_a"">Павлу</span>, Вам необходимо <b>войти</b>.</a></div> </div> <div class=""ipanel bl_cont""> <div class=""profile_info""><h4 class=""slim_header"">Информация</h4><div class=""profile_info_cont""><div><dl class=""pinfo_row _pinfo""><dt>День рождения:</dt><dd>10 октября 1984 г.</dd></dl><dl class=""pinfo_row""><dt>Место работы:</dt><dd>Telegram</dd></dl></div> <div class=""pinfo_row""><a class=""wide_link al_pinfo"" href=""/durov?act=info"">Полная информация »</a></div></div></div><a name=""menu""></a><div class=""profile_info""><h4 class=""slim_header"">Другое</h4><div class=""profile_info_cont profile_info_custom""><ul class=""profile_menu""> <li><a href=""/albums1"" class=""pm_item"">Фотографии <em class=""pm_counter"">233</em></a></li><li><a href=""/durov?act=fans"" class=""pm_item"">Подписчики <em class=""pm_counter"">6<span class=""num_delim""> </span>032<span class=""num_delim""> </span>503</em></a></li><li><a href=""/videos1"" class=""pm_item"">Видеозаписи <em class=""pm_counter"">14</em></a></li><li><a href=""/durov?menu_opened#menu"" class=""pm_item"" onclick=""this.parentNode.parentNode.nextSibling.style.display='block';this.parentNode.style.display='none';return false;"">Ещё..</a></li> </ul><ul class=""profile_menu"" style=""display:none""> <li><a href=""/durov?act=idols"" class=""pm_item"">Интересные страницы <em class=""pm_counter"">43</em></a></li><li><a name=""actions""></a><div class=""profile_info""><h4 class=""slim_header"">Действия</h4><div class=""profile_info_cont profile_info_custom""><ul class=""context_menu""> <li ><a href=""/durov?search=1"" class=""cm_item bli""><span class=""cm_label"">Поиск по записям</span></a></li> </ul></div></div></li> </ul></div></div> <a name=""wall""></a> <h4 class=""slim_header"">223 записи</h4> <a name=""posts""></a> <div class=""wall_posts upanel bl_cont""> <div class=""wall_item"" data-copy='11316927_4699'> <a class=""post__anchor anchor"" name=""post1_1237616""></a> <div class=""wi_head""> <a href=""/durov""><img src=""http://cs629231.vk.me/v629231001/c543/FfB--bOEVOY.jpg"" class=""wi_img"" /></a> <div class=""wi_cont""> <div class=""wi_author""><a class=""pi_author"" href=""/durov"">Павел Дуров</a> </div> <div class=""wi_info""><a class=""wi_date"" href=""/wall1_1237616"">1 сен в 21:50</a></div> </div> </div> <div class=""wi_body""> <div class=""wi_explain""> </div> <div class=""pic_body_wrap""> <div class=""pic_body""> <div class=""pic_header""> <a href=""/ohuenko""><img src=""http://cs628218.vk.me/v628218927/f562/6vAdzYRk0MA.jpg"" class=""pic_img"" /></a> <div class=""pic_cont""> <div class=""pic_from""><span></span><i class=""i_copy""></i><a class=""pi_author"" href=""/ohuenko"">Андрей Яковенко</a> </div> <div class=""pic_desc""><a class=""pic_desc_a"" href=""/wall11316927_4699"">1 сен в 21:37</a></div> </div> </div> </div> <div class=""pi_text""> <span><a href=""/feed?section=search&q=%23TelegramTheBestStickers"">#TelegramTheBestStickers</a> <br/>Подходят к завершению 15 новых стикерпаков&#33; По сложившейся традиции я предлагаю вам потестить их первыми. <br/><br/>На данный момент Telegram даёт возможность проявить себя и свои таланты более чем 50-ти художникам. Авторы получают не только локальную площадку для размещения своего творчества, но и щедрые индивидуальные премии каждые шесть месяцев. Всего с марта этого года на счета художников было переведено уже более &#036;450К — и это, конечно, только начало. </span><a href=""/wall1_1237616"" class=""pi_text_more"" onclick=""this.nextSibling.style.display='inline';this.style.display='none';return false;"">Показать полностью…</a><span style=""display:none""><br/>Чтобы вступить в ряды нашего «творческого подразделения подпольной структуры <img class=""emoji"" alt=""😎"" src=""/images/emoji/D83DDE0E.png"">», нужно прислать свои варианты стикеров личным сообщением @_Yakovenko (username вводить без нижнего подчеркивания ) в Telegram. <br/>Формат подачи работ следующий: рисуете 3 стикера в цвете с одним и тем же персонажем и 5 контурных эскизов c ним же на разные эмоции. Размер одного стикера должен быть не меньше 512х512 пикселей. Количество присылаемых вариантов персонажей не ограничено, потому лучше сделать не меньше трёх на выбор. <br/>Не забудьте прикрепить ссылку на ваше портфолио и, если ваши работы понравятся, ждите дальнейших инструкций. <img class=""emoji"" alt=""💪🏻"" src=""/images/emoji/D83DDCAAD83CDFFB.png""> <br/> <br/>Ссылки на наборы по порядку: <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FPhilTheOwl&post=1_1237616"" target=""_blank"">telegram.me/addstickers/PhilTheOwl</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FKamikazeCat&post=1_1237616"" target=""_blank"">telegram.me/addstickers/KamikazeCat</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FAmanita&post=1_1237616"" target=""_blank"">telegram.me/addstickers/Amanita</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FGreenGo&post=1_1237616"" target=""_blank"">telegram.me/addstickers/GreenGo</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FCrazyPony&post=1_1237616"" target=""_blank"">telegram.me/addstickers/CrazyPony</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FAliceFox&post=1_1237616"" target=""_blank"">telegram.me/addstickers/AliceFox</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FKoalaChuck&post=1_1237616"" target=""_blank"">telegram.me/addstickers/KoalaChuck</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FTheBestMovie2&post=1_1237616"" target=""_blank"">telegram.me/addstickers/TheBestMovie2</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FMsPaws&post=1_1237616"" target=""_blank"">telegram.me/addstickers/MsPaws</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FLazybonesJoe&post=1_1237616"" target=""_blank"">telegram.me/addstickers/LazybonesJoe</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FTheHipsterCat&post=1_1237616"" target=""_blank"">telegram.me/addstickers/TheHipsterCat</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FObeyReptilians&post=1_1237616"" target=""_blank"">telegram.me/addstickers/ObeyReptilians</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FDearWolf&post=1_1237616"" target=""_blank"">telegram.me/addstickers/DearWolf</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FBananaDude&post=1_1237616"" target=""_blank"">telegram.me/addstickers/BananaDude</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FMetcast&post=1_1237616"" target=""_blank"">telegram.me/addstickers/Metcast</a></span></div> <div class=""pi_medias thumbs_list thumbs_list1""> <div class=""medias_thumbs""><a class=""medias_thumb thumb_item al_photo"" href=""/photo11316927_428929212?list=wall1_1237616&from=profile""><img src=""http://cs636116.vk.me/v636116927/2467e/1UWGjveipqI.jpg"" class=""ph_img"" data-id=""11316927_428929212"" data-src_big=""http://cs636116.vk.me/v636116927/2467f/j5tXSKbuJsw.jpg|604|422"" /></a></div></div> </div> <div class=""wi_buttons""> <span class=""like_wrap""><a class=""item_like _i"" href=""/like?act=add&object=wall1_1237616&from=durov&hash=0e46d718df6142f554&wide=1""><i class=""i_like""></i><b class=""v_like"">2<span class=""num_delim""> </span>933</b></a><a class=""item_share _i"" href=""/like?act=publish&object=wall1_1237616&from=durov""><i class=""i_share""></i><b class=""v_share"">130</b></a></span><a class=""item_replies _i"" href=""/wall1_1237616?post_add#post_add""><i class=""i_replies""></i><b class=""v_replies"">17<span class=""num_delim""> </span>777</b></a> </div> </div> </div> <div class=""wall_item"" data-copy='11316927_4674'> <a class=""post__anchor anchor"" name=""post1_1237612""></a> <div class=""wi_head""> <a href=""/durov""><img src=""http://cs629231.vk.me/v629231001/c543/FfB--bOEVOY.jpg"" class=""wi_img"" /></a> <div class=""wi_cont""> <div class=""wi_author""><a class=""pi_author"" href=""/durov"">Павел Дуров</a> </div> <div class=""wi_info""><a class=""wi_date"" href=""/wall1_1237612"">1 сен в 21:50</a></div> </div> </div> <div class=""wi_body""> <div class=""wi_explain""> </div> <div class=""pic_body_wrap""> <div class=""pic_body""> <div class=""pic_header""> <a href=""/ohuenko""><img src=""http://cs628218.vk.me/v628218927/f562/6vAdzYRk0MA.jpg"" class=""pic_img"" /></a> <div class=""pic_cont""> <div class=""pic_from""><span></span><i class=""i_copy""></i><a class=""pi_author"" href=""/ohuenko"">Андрей Яковенко</a> </div> <div class=""pic_desc""><a class=""pic_desc_a"" href=""/wall11316927_4674"">17 авг в 16:49</a></div> </div> </div> </div> <div class=""pi_text""> <span><a href=""/feed?section=search&q=%23TelegramTheBestStickers"">#TelegramTheBestStickers</a><br/>Gotcha&#33;<br/>Прямо из-под планшетов подоспела новая партия горячих наборов&#33; Пока сохнет краска в пикселях, предлагаю вам в числе первых заценить их уже сейчас.<br/>И, конечно, тренд уходящего лета — ловите стикеры по игре Pokemon GO<img class=""emoji"" alt=""🎮"" src=""/images/emoji/D83CDFAE.png""></span><a href=""/wall1_1237612"" class=""pi_text_more"" onclick=""this.nextSibling.style.display='inline';this.style.display='none';return false;"">Показать полностью…</a><span style=""display:none""><br/><br/>Ссылки на наборы по порядку: <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FJeanJacques&post=1_1237612"" target=""_blank"">telegram.me/addstickers/JeanJacques</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FCorgeous&post=1_1237612"" target=""_blank"">telegram.me/addstickers/Corgeous</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FMantisEva&post=1_1237612"" target=""_blank"">telegram.me/addstickers/MantisEva</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FCannamela&post=1_1237612"" target=""_blank"">telegram.me/addstickers/Cannamela</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FKookyCat&post=1_1237612"" target=""_blank"">telegram.me/addstickers/KookyCat</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FMishkaTheBear&post=1_1237612"" target=""_blank"">telegram.me/addstickers/MishkaTheBear</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FMrRibbit&post=1_1237612"" target=""_blank"">telegram.me/addstickers/MrRibbit</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FPokemonMasters&post=1_1237612"" target=""_blank"">telegram.me/addstickers/PokemonMasters</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FHeyProboscis&post=1_1237612"" target=""_blank"">telegram.me/addstickers/HeyProboscis</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FCrazySnail&post=1_1237612"" target=""_blank"">telegram.me/addstickers/CrazySnail</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FUnicornStella&post=1_1237612"" target=""_blank"">telegram.me/addstickers/UnicornStella</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FRed_Riding_Hood_and_Wolf&post=1_1237612"" target=""_blank"">telegram.me/addstickers/Red_Riding_Hood_and_Wolf</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FRuntsAnimals&post=1_1237612"" target=""_blank"">telegram.me/addstickers/RuntsAnimals</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FGoRobot&post=1_1237612"" target=""_blank"">telegram.me/addstickers/GoRobot</a> <br/><a href=""/away.php?to=http%3A%2F%2Ftelegram.me%2Faddstickers%2FLamaCritic&post=1_1237612"" target=""_blank"">telegram.me/addstickers/LamaCritic</a></span></div> <div class=""pi_medias thumbs_list thumbs_list1""> <div class=""medias_thumbs""><a class=""medias_thumb thumb_item al_photo"" href=""/photo11316927_426775404?list=wall1_1237612&from=profile""><img src=""http://cs633429.vk.me/v633429927/43dfd/KTaAf6q0J8c.jpg"" class=""ph_img"" data-id=""11316927_426775404"" data-src_big=""http://cs633429.vk.me/v633429927/43dfe/44ohqJhEsDg.jpg|604|422"" /></a></div></div> </div> <div class=""wi_buttons""> <span class=""like_wrap""><a class=""item_like _i"" href=""/like?act=add&object=wall1_1237612&from=durov&hash=7abb2d53bb10e452d2&wide=1""><i class=""i_like""></i><b class=""v_like"">1<span class=""num_delim""> </span>594</b></a><a class=""item_share _i"" href=""/like?act=publish&object=wall1_1237612&from=durov""><i class=""i_share""></i><b class=""v_share"">50</b></a></span><a class=""item_replies _i"" href=""/wall1_1237612?post_add#post_add""><i class=""i_replies""></i><b class=""v_replies"">1<span class=""num_delim""> </span>921</b></a> </div> </div> </div> <div class=""wall_item""> <a class=""post__anchor anchor"" name=""post1_1184057""></a> <div class=""wi_head""> <a href=""/durov""><img src=""http://cs629231.vk.me/v629231001/c543/FfB--bOEVOY.jpg"" class=""wi_img"" /></a> <div class=""wi_cont""> <div class=""wi_author""><a class=""pi_author"" href=""/durov"">Павел Дуров</a> </div> <div class=""wi_info""><a class=""wi_date"" href=""/wall1_1184057"">17 авг в 17:46</a></div> </div> </div> <div class=""wi_body""> <div class=""wi_explain""> </div> <div class=""pi_text""> <span>7 претензий к новому дизайну веб-версии ВКонтакте:<br/><br/>1. Главный раздел сайта – Новости – стали уже. Парадоксально, что необходимость редизайна обосновывалась стремлением более эффективно использовать экран. По факту, если сравнить ширину записей в старой и новой версии, новости лишь сузились на 28px.</span><a href=""/wall1_1184057"" class=""pi_text_more"" onclick=""this.nextSibling.style.display='inline';this.style.display='none';return false;"">Показать полностью…</a><span style=""display:none""><br/><br/>2. Новости – как и все остальные разделы – стали ниже на 42px. Из-за фиксированной шапки вертикальное пространство сайта стало меньше, нужно больше проматывать. Это серьезное изменение к худшему: именно вертикальный скролл представляет собой дефицит на большинстве дисплеев.<br/><br/>3. При просмотре главного раздела сайта – Новостей – утрачивается фокус на контенте. В новой версии возник визуальный мусор в виде редко используемой фиксированной правой колонки. С учетом фиксированной шапки и узкой ширины, просмотр новостей стал вдвойне захламлен.<br/><br/>4. При просмотре фотографий утрачен фокус на самой картинке. Фотографии смещены влево, а яркое пятно белой колонки комментариев, появившейся справа, перетягивает на себя фокус внимания. Это решение было скопировано c Facebook, который в свое время ввел правую колонку для размещения дополнительных рекламных блоков. <br/><br/>5. Статичная левая колонка при промотке старых записей личных страниц не только не дает нужной информации, но и сужает горизонтальное пространство для просмотра записей по сравнению со старой версией. Аналогичная ситуация – при просмотре записей в группах и пабликах. <br/><br/>6. Замена белого цвета фона на серый не только уменьшила ощущение чистоты и минимализма, но и в целом сделала сайт более грустным и пасмурным. Появившиеся сизые иконки на сером меню слева на всех страницах избыточны и представляют собой визуальный мусор.<br/><br/>7. Старый логотип “ВКонтакте” в силу композиции лучше вписывался в горизонтальную шапку, чем новый логотип “VK”. Я нарисовал оба логотипа достаточно давно (первый около 10 лет назад, второй – около 5), но в русскоязычной версии не заменял старый логотип международным именно в силу этого – достаточно очевидного – обстоятельства.<br/><br/>Итог: старый дизайн ВКонтакте, не менявшийся несколько лет, безусловно, нуждался в ряде доработок и эстетическом переосмыслении в рамках новых стилей. Однако проведенный редизайн не только не соответствует стандартам 15-16 года (таким, как Material), но и снижает юзабельность ресурса. <br/><br/>Все перечисленные элементы нового дизайна были вслепую скопированы с Фейсбука образца 2012. Фейсбук в эти годы был вынужден наращивать прибыльность в рамках IPO, поэтому в проектировании дизайна жертвовал интересами пользователей ради добавления новых рекламных блоков. Отсюда появилась и правая колонка в Новостях и Фотографиях, и снижение фокуса на контенте ради рекламы. <br/><br/>Сегодня, когда монетизация ВКонтакте переносится в “умную” ленту и мобильные клиенты, подобные шаги не обоснованы. В 2016м году Facebook должен был копировать наработки ВКонтакте, а не наоборот.</span></div> <div class=""pi_medias thumbs_list thumbs_list7""> <div class=""medias_thumbs""><a class=""medias_thumb thumb_item al_photo"" href=""/photo1_430420801?list=wall1_1184057&from=profile""><img src=""http://cs543106.vk.me/v543106001/1c432/NxZ5u6RIC-Y.jpg"" class=""ph_img"" data-id=""1_430420801"" data-src_big=""http://cs543106.vk.me/v543106001/1c433/9lvaMS0Pzcg.jpg|604|537"" /></a><a class=""medias_thumb thumb_item al_photo"" href=""/photo1_430424714?list=wall1_1184057&from=profile""><img src=""http://cs543106.vk.me/v543106001/1c488/j82X1rUAC9o.jpg"" class=""ph_img"" data-id=""1_430424714"" data-src_big=""http://cs543106.vk.me/v543106001/1c489/GioUGyaSgqA.jpg|604|375"" /></a><a class=""medias_thumb thumb_item al_photo"" href=""/photo1_430420878?list=wall1_1184057&from=profile""><img src=""http://cs543106.vk.me/v543106001/1c444/Ho8FUoc7cCc.jpg"" class=""ph_img"" data-id=""1_430420878"" data-src_big=""http://cs543106.vk.me/v543106001/1c445/6L3kxoFW8qI.jpg|604|234"" /></a><a class=""medias_thumb thumb_item al_photo"" href=""/photo1_430425125?list=wall1_1184057&from=profile""><img src=""http://cs543106.vk.me/v543106001/1c491/2x-nxFeFElU.jpg"" class=""ph_img"" data-id=""1_430425125"" data-src_big=""http://cs543106.vk.me/v543106001/1c492/Rf1ZluR1Svg.jpg|604|256"" /></a><a class=""medias_thumb thumb_item al_photo"" href=""/photo1_430420944?list=wall1_1184057&from=profile""><img src=""http://cs543106.vk.me/v543106001/1c458/VsPg4JlMSlc.jpg"" class=""ph_img"" data-id=""1_430420944"" data-src_big=""http://cs543106.vk.me/v543106001/1c459/_ms_LSeL92I.jpg|604|257"" /></a><a class=""medias_thumb thumb_item al_photo"" href=""/photo1_430421053?list=wall1_1184057&from=profile""><img src=""http://cs543106.vk.me/v543106001/1c46c/tzPcsvCfFSc.jpg"" class=""ph_img"" data-id=""1_430421053"" data-src_big=""http://cs543106.vk.me/v543106001/1c46d/tdYk8GzHQ8I.jpg|604|188"" /></a><a class=""medias_thumb thumb_item al_photo"" href=""/photo1_430421078?list=wall1_1184057&from=profile""><img src=""http://cs543106.vk.me/v543106001/1c476/MsWJDN6mYUU.jpg"" class=""ph_img"" data-id=""1_430421078"" data-src_big=""http://cs543106.vk.me/v543106001/1c477/BMkUFjcitd8.jpg|604|205"" /></a></div></div> <div class=""wi_buttons""> <span class=""like_wrap""><a class=""item_like _i"" href=""/like?act=add&object=wall1_1184057&from=durov&hash=0e6739baf8c9ea42b3&wide=1""><i class=""i_like""></i><b class=""v_like"">108<span class=""num_delim""> </span>250</b></a><a class=""item_share _i"" href=""/like?act=publish&object=wall1_1184057&from=durov""><i class=""i_share""></i><b class=""v_share"">12<span class=""num_delim""> </span>449</b></a></span><a class=""item_replies _i"" href=""/wall1_1184057?post_add#post_add""><i class=""i_replies""></i><b class=""v_replies"">44<span class=""num_delim""> </span>092</b></a> </div> </div> </div> <div class=""wall_item""> <a class=""post__anchor anchor"" name=""post1_1133071""></a> <div class=""wi_head""> <a href=""/durov""><img src=""http://cs629231.vk.me/v629231001/c543/FfB--bOEVOY.jpg"" class=""wi_img"" /></a> <div class=""wi_cont""> <div class=""wi_author""><a class=""pi_author"" href=""/durov"">Павел Дуров</a> </div> <div class=""wi_info""><a class=""wi_date"" href=""/wall1_1133071"">21 июл в 17:11</a></div> </div> </div> <div class=""wi_body""> <div class=""wi_explain""> </div> <div class=""pi_text"">И к более насущному вопросу: что придет на замену KickassTorrents? <br/><br/><a href=""/away.php?to=https%3A%2F%2Flenta.ru%2Fnews%2F2016%2F07%2F21%2Fthe_best_torrent%2F&post=1_1133071"" target=""_blank"">https://lenta.ru/news/2016/07/21/the_best_torrent/</a></div> <div class=""pi_medias""><div class=""medias_link_thumbed""> <a class=""mlt_header"" href=""/away.php?to=https%3A%2F%2Flenta.ru%2Fnews%2F2016%2F07%2F21%2Fthe_best_torrent%2F&post=1_1133071"" target=""_blank""> <div class=""mlt_title"">В Польше задержали создателя самого популярного торрент-трекера в мире</div> <div class=""mlt_link"">lenta.ru</div></a> <div class=""mlt_thumb"" style=""background-image:url(http://cs630516.vk.me/v630516641/3db35/HIxk9vOzkTY.jpg)""></div> <div class=""mlt_cont""> <div class=""mlt_body""> <div class=""mlt_desc"">В Польше по запросу американских властей задержан гражданин Украины Артем Ваулин, которого называют создателем самого популярного в мире торрент-трекера Kickass Torrents. Его обвиняют..</div> </div> </div> </div></div> <div class=""wi_buttons""> <span class=""like_wrap""><a class=""item_like _i"" href=""/like?act=add&object=wall1_1133071&from=durov&hash=7d4a2dac46794552c4&wide=1""><i class=""i_like""></i><b class=""v_like"">7<span class=""num_delim""> </span>318</b></a><a class=""item_share _i"" href=""/like?act=publish&object=wall1_1133071&from=durov""><i class=""i_share""></i><b class=""v_share"">376</b></a></span><a class=""item_replies _i"" href=""/wall1_1133071?post_add#post_add""><i class=""i_replies""></i><b class=""v_replies"">37<span class=""num_delim""> </span>469</b></a> </div> </div> </div> <div class=""wall_item"" data-copy='-55882680_85'> <a class=""post__anchor anchor"" name=""post1_1108590""></a> <div class=""wi_head""> <a href=""/durov""><img src=""http://cs629231.vk.me/v629231001/c543/FfB--bOEVOY.jpg"" class=""wi_img"" /></a> <div class=""wi_cont""> <div class=""wi_author""><a class=""pi_author"" href=""/durov"">Павел Дуров</a> </div> <div class=""wi_info""><a class=""wi_date"" href=""/wall1_1108590"">5 июл в 19:54</a></div> </div> </div> <div class=""wi_body""> <div class=""wi_explain""> </div> <div class=""pic_body_wrap""> <div class=""pic_body""> <div class=""pic_header""> <a href=""/durovschallenge""><img src=""http://cs604327.vk.me/v604327001/5d27/luBz-WO1E-4.jpg"" class=""pic_img"" /></a> <div class=""pic_cont""> <div class=""pic_from""><span></span><i class=""i_copy""></i><a class=""pi_author"" href=""/durovschallenge"">Telegram Challenge</a> </div> <div class=""pic_desc""><a class=""pic_desc_a"" href=""/wall-55882680_85"">5 июл в 2:06</a></div> </div> </div> </div> <div class=""pi_text"">После тщательного тестирования подведены итоги Telegram Android Challenge 2016. Всего было прислано 52 конкурсных приложения. <br/><br/>1 место: Адель Низамутдинов и Евгений Авсиевич. Каждый из занявших первое место получает 300,000 рублей.<br/>2 место: Григорий Клюшников и Станислав Федоров. Каждый из занявших второе место получает 200,000 рублей.<br/>3 место: Mykhailo (TgCameraChallenge) и Alex (Cameraphone). Каждый из занявших третье место получает 100,000 рублей.<br/><br/>Детали тестирования каждого из присланных приложений – <a href=""/away.php?to=https%3A%2F%2Fdocs.google.com%2Fdocument%2Fd%2F1atMrHfjcqLIu2PBD07PrsIGPjE3Idu9Wkf_1CyoGeAU%2Fedit&post=1_1108590"" target=""_blank"" title=""https://docs.google.com/document/d/1atMrHfjcqLIu2PBD07PrsIGPjE3Idu9Wkf_1CyoGeAU/edit"">https://docs.google.com/document/d/1atMrHfjcqLIu2PBD0..</a>. К сожалению, ни одно приложение не продемонстрировало безупречно стабильную работу. По желанию участников мы можем выcлать подробные логи ошибок их приложений при каждом падении.<br/><br/>Поздравляем победителей&#33; Денежные призы и сертификаты будут разосланы каждому из 6 победителей в течение июля.</div> <div class=""pi_medias""><div class=""medias_link_thumbed""> <a class=""mlt_header"" href=""/away.php?to=https%3A%2F%2Fdocs.google.com%2Fdocument%2Fd%2F1atMrHfjcqLIu2PBD07PrsIGPjE3Idu9Wkf_1CyoGeAU%2Fedit&post=1_1108590"" target=""_blank""> <div class=""mlt_title"">Camera contest</div> <div class=""mlt_link"">docs.google.com</div></a> <div class=""mlt_thumb"" style=""background-image:url(http://cs604420.vk.me/v604420001/17b62/HPCbNlBqkBA.jpg)""></div> <div class=""mlt_cont""> <div class=""mlt_body""> <div class=""mlt_desc"">Девайсы, на которых проводилось тестирование: Samsung Galaxy S3 (Android 4.3), Moto X (4.4), Moto G (6.0), Xiami Redmi Note 2 (5.0.2), Lenovo K900 (4.2.1). 1 - Adel Nizamutdinov -..</div> </div> </div> </div></div> <div class=""pi_signed""> <span></span><i class=""i_signed""></i><a class=""user"" href=""/durov"">Павел Дуров</a> </div> </div> <div class=""wi_buttons""> <span class=""like_wrap""><a class=""item_like _i"" href=""/like?act=add&object=wall1_1108590&from=durov&hash=e3681136d1935d9c21&wide=1""><i class=""i_like""></i><b class=""v_like"">4<span class=""num_delim""> </span>235</b></a><a class=""item_share _i"" href=""/like?act=publish&object=wall1_1108590&from=durov""><i class=""i_share""></i><b class=""v_share"">84</b></a></span><a class=""item_replies _i"" href=""/wall1_1108590?post_add#post_add""><i class=""i_replies""></i><b class=""v_replies"">15<span class=""num_delim""> </span>180</b></a> </div> </div> </div> <div class=""show_more_wrap""><a class=""show_more"" href=""/durov?offset=5&own=1#posts"">Показать ещё</a></div> </div> </div> </div></div> <div id=""mfoot"" class=""mfoot""><div class=""pfoot""> <ul id=""footer_menu"" class=""footer_menu""> <li class=""fm_row""><a class=""fm_item"" href=""/"">На главную</a></li> <li class=""fm_row""><a id=""fv_link"" class=""fm_item fv_link"" href=""http://vk.com/durov?_fm=profile"">Полная версия</a></li> </ul> </div></div> <div class=""_cntrs"" style=""height:0;""> <img width=""1"" height=""1"" src=""//counter.yadro.ru/hit?uhttp%3A%2F%2Fm.vk.com%2Fdurov;r;51547724"" alt="" align=""left"" /> <img width=""1"" height=""1"" src=""//b.scorecardresearch.com/p?c1=2&c2=13765216&c3=&c4=http%3A%2F%2Fm.vk.com%2Fdurov&c5=&c9=&c15=&cv=2.0&cj=1&rn=51547724"" alt="" align=""left"" /> <img src=""//top-fwz1.mail.ru/counter?id=2579437;pid=0;r="" style=""border:0;"" height=""1"" width=""1"" /> </div></div> <div id=""z""></div> </div> <div id=""vk_bottom""></div> <script type=""text/javascript""> <!-- parent&&parent!=window&&(document.getElementsByTagName('body')[0].innerHTML=''); //--> </script> </body> </html>"; Match m = Regex.Match(input, pattern); Console.WriteLine("'{0}' found at index {1}", m.Value, m.Index); } }

Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx