<!-- Generated by pkgdown: do not edit by hand --><htmllang="en"><head><metahttp-equiv="Content-Type"content="text/html; charset=UTF-8"><metacharset="utf-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content="width=device-width, initial-scale=1, shrink-to-fit=no"><metaname="description"content="Convenient wrapper around grepl() to match a pattern: x %like% pattern. It always returns a logical vector and is always case-insensitive (use x %like_case% pattern for case-sensitive matching). Also, pattern can be as long as x to compare items of each index in both vectors, or they both can have the same length to iterate over all cases."><title>Vectorised Pattern Matching with Keyboard Shortcut — like • AMR (for R)</title><!-- favicons --><linkrel="icon"type="image/png"sizes="16x16"href="../favicon-16x16.png"><linkrel="icon"type="image/png"sizes="32x32"href="../favicon-32x32.png"><linkrel="apple-touch-icon"type="image/png"sizes="180x180"href="../apple-touch-icon.png"><linkrel="apple-touch-icon"type="image/png"sizes="120x120"href="../apple-touch-icon-120x120.png"><linkrel="apple-touch-icon"type="image/png"sizes="76x76"href="../apple-touch-icon-76x76.png"><linkrel="apple-touch-icon"type="image/png"sizes="60x60"href="../apple-touch-icon-60x60.png"><scriptsrc="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><metaname="viewport"content="width=device-width, initial-scale=1, shrink-to-fit=no"><linkhref="../deps/bootstrap-5.1.3/bootstrap.min.css"rel="stylesheet"><scriptsrc="../deps/bootstrap-5.1.3/bootstrap.bundle.min.js"></script><linkhref="../deps/Fira_Code-0.4.4/font.css"rel="stylesheet"><!-- Font Awesome icons --><linkrel="stylesheet"href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/all.min.css"integrity="sha256-mmgLkCYLUQbXn0B1SRqzHar6dCnv9oZFPEC1g1cwlkk="crossorigin="anonymous"><linkrel="stylesheet"href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/v4-shims.min.css"integrity="sha256-wZjR52fzng1pJHwx4aV2AO3yyTOXrcDW7jBpJtTwVxw="crossorigin="anonymous"><!-- bootstrap-toc --><scriptsrc="https://cdn.rawgit.com/afeld/bootstrap-toc/v1.0.1/dist/bootstrap-toc.min.js"></script><!-- headroom.js --><scriptsrc="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/headroom.min.js"integrity="sha256-AsUX4SJE1+yuDu5+mAVzJbuYNPHj/WroHuZ8Ir/CkE0="crossorigin="anonymous"></script><scriptsrc="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/jQuery.headroom.min.js"integrity="sha256-ZX/yNShbjqsohH1k95liqY9Gd8uOiE1S4vZc+9KQ1K4="crossorigin="anonymous"></script><!-- clipboard.js --><scriptsrc="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.6/clipboard.min.js"integrity="sha256-inc5kl9MA1hkeYUt+EC3BhlIgyp/2jDIyBLS6k3UxPI="crossorigin="anonymous"></script><!-- search --><scriptsrc="https://cdnjs.cloudflare.com/ajax/libs/fuse.js/6.4.6/fuse.js"integrity="sha512-zv6Ywkjyktsohkbp9bb45V6tEMoWhzFzXis+LrMehmJZZSys19Yxf1dopHx7WzIKxr5tK2dVcYmaCk2uqdjF4A=="crossorigin="anonymous"></script><scriptsrc="https://cdnjs.cloudflare.com/ajax/libs/autocomplete.js/0.38.0/autocomplete.jquery.min.js"integrity="sha512-GU9ayf+66Xx2TmpxqJpliWbT5PiGYxpaG8rfnBEk1LL8l1KGkRShhngwdXK1UgqhAzWpZHSiYPc09/NwDQIGyg=="crossorigin="anonymous"></script><scriptsrc="https://cdnjs.cloudflare.com/ajax/libs/mark.js/8.11.1/mark.min.js"integrity="sha512-5CYOlHXGh6QpOFA/TeTylKLWfB3ftPsde7AnmhuitiTX4K5SqCLBeKro6sPS8ilsz1Q4NRx3v8Ko2IBiszzdww=="crossorigin="anonymous"></script><!-- pkgdown --><scriptsrc="../pkgdown.js"></script><linkhref="../extra.css"rel="stylesheet"><scriptsrc="../extra.js"></script><metaproperty="og:title"content="Vectorised Pattern Matching with Keyboard Shortcut — like"><metaproperty="og:description"content="Convenientwrapperaroundgrepl()tomatchapattern:x%like%pattern.Italwaysreturnsalogicalvectorandisalwayscase-insensitive(usex%like_case%patternforcase-sensitivematching).Also,patterncanbeaslongasxtocompareitemsofeachindexinbothvectors,ortheybothcanhavethesamelength
<p>Convenient wrapper around <code><ahref="https://rdrr.io/r/base/grep.html"class="external-link">grepl()</a></code> to match a pattern: <code>x %like% pattern</code>. It always returns a <code><ahref="https://rdrr.io/r/base/logical.html"class="external-link">logical</a></code> vector and is always case-insensitive (use <code>x %like_case% pattern</code> for case-sensitive matching). Also, <code>pattern</code> can be as long as <code>x</code> to compare items of each index in both vectors, or they both can have the same length to iterate over all cases.</p>
<p>Idea from the <ahref="https://github.com/Rdatatable/data.table/blob/ec1259af1bf13fc0c96a1d3f9e84d55d8106a9a4/R/like.R"class="external-link"><code>like</code> function from the <code>data.table</code> package</a>, although altered as explained in <em>Details</em>.</p>
<dd><p>a <ahref="https://rdrr.io/r/base/character.html"class="external-link">character</a> vector where matches are sought, or an object which can be coerced by <code><ahref="https://rdrr.io/r/base/character.html"class="external-link">as.character()</a></code> to a <ahref="https://rdrr.io/r/base/character.html"class="external-link">character</a> vector.</p></dd>
<dt>pattern</dt>
<dd><p>a <ahref="https://rdrr.io/r/base/character.html"class="external-link">character</a> vector containing regular expressions (or a <ahref="https://rdrr.io/r/base/character.html"class="external-link">character</a> string for <code>fixed = TRUE</code>) to be matched in the given <ahref="https://rdrr.io/r/base/character.html"class="external-link">character</a> vector. Coerced by <code><ahref="https://rdrr.io/r/base/character.html"class="external-link">as.character()</a></code> to a <ahref="https://rdrr.io/r/base/character.html"class="external-link">character</a> string if possible.</p></dd>
<dt>ignore.case</dt>
<dd><p>if <code>FALSE</code>, the pattern matching is <em>case sensitive</em> and if <code>TRUE</code>, case is ignored during matching.</p></dd>
<p>These <code>like()</code> and <code>%like%</code>/<code>%unlike%</code> functions:</p><ul><li><p>Are case-insensitive (use <code>%like_case%</code>/<code>%unlike_case%</code> for case-sensitive matching)</p></li>
<li><p>Support multiple patterns</p></li>
<li><p>Check if <code>pattern</code> is a valid regular expression and sets <code>fixed = TRUE</code> if not, to greatly improve speed (vectorised over <code>pattern</code>)</p></li>
<li><p>Always use compatibility with Perl unless <code>fixed = TRUE</code>, to greatly improve speed</p></li>
</ul><p>Using RStudio? The <code>%like%</code>/<code>%unlike%</code> functions can also be directly inserted in your code from the Addins menu and can have its own keyboard shortcut like <code>Shift+Ctrl+L</code> or <code>Shift+Cmd+L</code> (see menu <code>Tools</code>><code>Modify Keyboard Shortcuts...</code>). If you keep pressing your shortcut, the inserted text will be iterated over <code>%like%</code> -><code>%unlike%</code> -><code>%like_case%</code> -><code>%unlike_case%</code>.</p>
<divclass="sourceCode"><preclass="sourceCode r"><code><spanclass="r-in"><span><spanclass="va">a</span><spanclass="op"><-</span><spanclass="st">"This is a test"</span></span></span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 1</span> 2002-02-21 4FC193 69 M Clinic… B_ENTRC_FACM NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 2</span> 2002-04-08 130252 78 M ICU B_ENTRC_FCLS NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 3</span> 2002-06-23 798871 82 M Clinic… B_ENTRC_FCLS NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 4</span> 2002-06-23 798871 82 M Clinic… B_ENTRC_FCLS NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 5</span> 2003-04-20 6BC362 62 M ICU B_ENTRC NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 6</span> 2003-04-21 6BC362 62 M ICU B_ENTRC NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 7</span> 2003-08-13 F35553 52 M ICU B_ENTRBC_CLOC R NA NA R </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 8</span> 2003-08-13 F35553 52 M ICU B_ENTRC_FCLS NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 9</span> 2003-09-05 F35553 52 M ICU B_ENTRC NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;">10</span> 2003-09-05 F35553 52 M ICU B_ENTRBC_CLOC R NA NA R </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #949494;"># … with 96 more rows, and 36 more variables: AMC <rsi>, AMP <rsi>, TZP <rsi>,</span></span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 1</span> 2002-02-21 4FC193 69 M Clinic… B_ENTRC_FACM NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 2</span> 2002-04-08 130252 78 M ICU B_ENTRC_FCLS NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 3</span> 2002-06-23 798871 82 M Clinic… B_ENTRC_FCLS NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 4</span> 2002-06-23 798871 82 M Clinic… B_ENTRC_FCLS NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 5</span> 2003-04-20 6BC362 62 M ICU B_ENTRC NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 6</span> 2003-04-21 6BC362 62 M ICU B_ENTRC NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 7</span> 2003-08-13 F35553 52 M ICU B_ENTRBC_CLOC R NA NA R </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 8</span> 2003-08-13 F35553 52 M ICU B_ENTRC_FCLS NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;"> 9</span> 2003-09-05 F35553 52 M ICU B_ENTRC NA NA NA NA </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #BCBCBC;">10</span> 2003-09-05 F35553 52 M ICU B_ENTRBC_CLOC R NA NA R </span>
<spanclass="r-out co"><spanclass="r-pr">#></span><spanstyle="color: #949494;"># … with 96 more rows, and 36 more variables: AMC <rsi>, AMP <rsi>, TZP <rsi>,</span></span>
</main><asideclass="col-md-3"><navid="toc"><h2>On this page</h2>
</nav></aside></div>
<footer><divclass="pkgdown-footer-left">
<p></p><p><code>AMR</code> (for R). Developed at the <atarget="_blank"href="https://www.rug.nl"class="external-link">University of Groningen</a> in collaboration with non-profit organisations<br><atarget="_blank"href="https://www.certe.nl"class="external-link">Certe Medical Diagnostics and Advice Foundation</a> and <atarget="_blank"href="https://www.umcg.nl"class="external-link">University Medical Center Groningen</a>.</p>