{"id":4181,"date":"2019-05-08T09:41:37","date_gmt":"2019-05-08T14:41:37","guid":{"rendered":"https:\/\/blogs.mathworks.com\/videos\/?p=4181"},"modified":"2019-05-23T08:40:17","modified_gmt":"2019-05-23T13:40:17","slug":"handling-multiple-match-tokens-in-my-web-app","status":"publish","type":"post","link":"https:\/\/blogs.mathworks.com\/videos\/2019\/05\/08\/handling-multiple-match-tokens-in-my-web-app\/","title":{"rendered":"Handling Multiple Match Tokens in My Web App"},"content":{"rendered":"<p>Now I want to modify the <a href=\"https:\/\/blogs.mathworks.com\/videos\/2019\/03\/14\/building-a-matlab-app-to-extract-web-page-html-patterns\/\">MATLAB app I recently made to scrape web pages<\/a>, so that it can handle multiple multi-part patterns. i.e. where there are more than one token in the regular expression match pattern.<\/p>\n<p>I&#8217;ll use this example where I want to find the href attributes and the link text for all the links on a web page (for multiple pages).<\/p>\n<p>So, for the example string:<\/p>\n<pre>\r\n &lt;a href=\"\/academia.html?s_tid=gn_acad\"&gt;Academia&lt;\/a&gt;\r\n<\/pre>\n<p>I want to extract:<\/p>\n<ol>\n<li><tt>\/academia.html?s_tid=gn_acad<\/tt><\/li>\n<li><tt>Academia<\/tt><\/li>\n<\/ol>\n<p>So I will use this regex pattern:<\/p>\n<pre>&lt;a href=\"([^\"]*)\"&gt;([^&lt;]*)&lt;\/a&gt;\r\n<\/pre>\n<p>Features covered in this <a href=\"https:\/\/blogs.mathworks.com\/videos\/2015\/10\/29\/matlab-code-along-videos\/\">code-along<\/a> style video include:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.mathworks.com\/products\/matlab\/app-designer.html\">App Designer<\/a><\/li>\n<li><tt><a href=\"https:\/\/www.mathworks.com\/help\/matlab\/ref\/regexp.html\">regexp<\/a><\/tt><\/li>\n<\/ul>\n<p><div class=\"row\"><div class=\"col-xs-12 containing-block\"><div class=\"bc-outer-container add_margin_20\"><videoplayer><div class=\"video-js-container\"><video data-video-id=\"6033886016001\" data-video-category=\"blog\" data-autostart=\"false\" data-account=\"62009828001\" data-omniture-account=\"mathwgbl\" data-player=\"rJ9XCz2Sx\" data-embed=\"default\" id=\"mathworks-brightcove-player\" class=\"video-js\" controls><\/video><script src=\"\/\/players.brightcove.net\/62009828001\/rJ9XCz2Sx_default\/index.min.js\"><\/script><script>if (typeof(playerLoaded) === 'undefined') {var playerLoaded = false;}(function isVideojsDefined() {if (typeof(videojs) !== 'undefined') {videojs(\"mathworks-brightcove-player\").on('loadedmetadata', function() {playerLoaded = true;});} else {setTimeout(isVideojsDefined, 10);}})();<\/script><\/div><\/videoplayer><\/div><\/div><\/div><\/p>\n<p>Play the video in full screen mode for a better viewing experience.\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"thumbnail thumbnail_asset asset_overlay video\"><a href=\"https:\/\/blogs.mathworks.com\/videos\/2019\/05\/08\/handling-multiple-match-tokens-in-my-web-app\/?dir=autoplay\"><img decoding=\"async\" src=\"https:\/\/cf-images.us-east-1.prod.boltdns.net\/v1\/static\/62009828001\/6ea64f0d-24d9-4e23-bc8e-78ad0e535ab9\/c42d48b9-915b-4774-855d-4058d681c6ba\/1280x720\/match\/image.jpg\" onError=\"this.style.display ='none';\"\/><\/p>\n<div class=\"overlay_container\">\n      <span class=\"icon-video icon_color_null\"><time class=\"video_length\">31:30<\/time><\/span>\n      <\/div>\n<p>      <\/a><\/div>\n<p>Now I want to modify the MATLAB app I recently made to scrape web pages, so that it can handle multiple multi-part patterns. i.e. where there are more than one token in the regular expression match&#8230; <a class=\"read-more\" href=\"https:\/\/blogs.mathworks.com\/videos\/2019\/05\/08\/handling-multiple-match-tokens-in-my-web-app\/\">read more >><\/a><\/p>\n","protected":false},"author":133,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[33,27,4],"tags":[],"_links":{"self":[{"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/posts\/4181"}],"collection":[{"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/users\/133"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/comments?post=4181"}],"version-history":[{"count":21,"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/posts\/4181\/revisions"}],"predecessor-version":[{"id":4225,"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/posts\/4181\/revisions\/4225"}],"wp:attachment":[{"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/media?parent=4181"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/categories?post=4181"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/videos\/wp-json\/wp\/v2\/tags?post=4181"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}