Files
sfall/strings/index.html
T

14 lines
28 KiB
HTML
Raw Normal View History

2026-01-27 07:17:52 +00:00
<!DOCTYPE html> <html lang="en-US"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <link rel="stylesheet" href="/sfall/assets/css/just-the-docs-default.css"> <link rel="stylesheet" href="/sfall/assets/css/just-the-docs-head-nav.css" id="jtd-head-nav-stylesheet"> <style id="jtd-nav-activation"> .site-nav > ul.nav-list:first-child > li > a, .site-nav > ul.nav-list:first-child > li > ul > li:not(:nth-child(2)) > a, .site-nav > ul.nav-list:first-child > li > ul > li > ul > li a { background-image: none; } .site-nav > ul.nav-list:not(:first-child) a, .site-nav li.external a { background-image: none; } .site-nav > ul.nav-list:first-child > li:nth-child(31) > ul > li:nth-child(2) > a { font-weight: 600; text-decoration: none; }.site-nav > ul.nav-list:first-child > li:nth-child(31) > button svg, .site-nav > ul.nav-list:first-child > li:nth-child(31) > ul > li:nth-child(2) > button svg { transform: rotate(-90deg); }.site-nav > ul.nav-list:first-child > li.nav-list-item:nth-child(31) > ul.nav-list, .site-nav > ul.nav-list:first-child > li.nav-list-item:nth-child(31) > ul.nav-list > li.nav-list-item:nth-child(2) > ul.nav-list { display: block; } </style> <script src="/sfall/assets/js/vendor/lunr.min.js"></script> <script src="/sfall/assets/js/just-the-docs.js"></script> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="icon" href="/sfall/favicon.ico" type="image/x-icon"> <!-- Begin Jekyll SEO tag v2.8.0 --> <title>Strings | sfall</title> <meta name="generator" content="Jekyll v3.9.0" /> <meta property="og:title" content="Strings" /> <meta property="og:locale" content="en_US" /> <meta name="description" content="Sfall documentation" /> <meta property="og:description" content="Sfall documentation" /> <link rel="canonical" href="/sfall/strings/" /> <meta property="og:url" content="/sfall/strings/" /> <meta property="og:site_name" content="sfall" /> <meta property="og:type" content="website" /> <meta name="twitter:card" content="summary" /> <meta property="twitter:title" content="Strings" /> <script type="application/ld+json"> {"@context":"https://schema.org","@type":"WebPage","description":"Sfall documentation","headline":"Strings","url":"/sfall/strings/"}</script> <!-- End Jekyll SEO tag --> <link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png"> <link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png"> <link rel="manifest" href="/assets/favicon/site.webmanifest"> <link rel="mask-icon" href="/assets/favicon/safari-pinned-tab.svg" color="#5bbad5"> <meta name="msapplication-TileColor" content="#da532c"> <meta name="msapplication-config" content="/assets/favicon/browserconfig.xml"> <meta name="theme-color" content="#ffffff"> </head> <body> <a class="skip-to-main" href="#main-content">Skip to main content</a> <svg xmlns="http://www.w3.org/2000/svg" class="d-none"> <symbol id="svg-link" viewBox="0 0 24 24"> <title>Link</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link"> <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path> </svg> </symbol> <symbol id="svg-menu" viewBox="0 0 24 24"> <title>Menu</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu"> <line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line> </svg> </symbol> <symbol id="svg-arrow-right" viewBox="0 0 24 24"> <title>Expand</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
2021-06-01 04:05:32 +00:00
</code></pre></div></div> <p>Returns ASCII code for the first character in given string.</p><hr /> <h3 class="d-inline-block" id="get_string_pointer"> <a href="#get_string_pointer" class="anchor-heading" aria-labelledby="get_string_pointer"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>get_string_pointer</strong> </h3> <p class="label label-green">sfall.h</p> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">int</span> <span class="n">get_string_pointer</span><span class="p">(</span><span class="n">string</span> <span class="n">text</span><span class="p">)</span>
</code></pre></div></div> <p>(DEPRECATED) Returns a pointer to a string variable or to a text</p> <ul> <li><strong>NOTE:</strong> this function is intended for use only in <code class="language-plaintext highlighter-rouge">HOOK_DESCRIPTIONOBJ</code>. Starting from sfall 4.4/3.8.40, you can return normal strings directly in the hook without calling the function</li> </ul><hr /> <h3 class="d-inline-block" id="string_find"> <a href="#string_find" class="anchor-heading" aria-labelledby="string_find"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>string_find</strong> </h3> <p class="label label-green">sfall.h</p> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">int</span> <span class="n">string_find</span><span class="p">(</span><span class="n">string</span> <span class="n">haystack</span><span class="p">,</span> <span class="n">string</span> <span class="n">needle</span><span class="p">)</span>
</code></pre></div></div> <p>Returns the position of the first occurrence of a <code class="language-plaintext highlighter-rouge">needle</code> string in a <code class="language-plaintext highlighter-rouge">haystack</code> string, or -1 if not found. The first character position is 0 (zero).</p><hr /> <h3 class="d-inline-block" id="string_find_from"> <a href="#string_find_from" class="anchor-heading" aria-labelledby="string_find_from"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>string_find_from</strong> </h3> <p class="label label-green">sfall.h</p> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">int</span> <span class="n">string_find_from</span><span class="p">(</span><span class="n">string</span> <span class="n">haystack</span><span class="p">,</span> <span class="n">string</span> <span class="n">needle</span><span class="p">,</span> <span class="kt">int</span> <span class="n">pos</span><span class="p">)</span>
</code></pre></div></div> <p>Works the same as <code class="language-plaintext highlighter-rouge">string_find</code>, except you can specify the position to start the search.</p> <ul> <li>If <code class="language-plaintext highlighter-rouge">pos</code> is negative - it indicates a position starting from the end of the string, similar to <code class="language-plaintext highlighter-rouge">substr()</code>.</li> </ul><hr /> <h3 class="d-inline-block" id="string_format"> <a href="#string_format" class="anchor-heading" aria-labelledby="string_format"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>string_format</strong> </h3> <p class="label label-green">sfall.h</p> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">string</span> <span class="n">string_format</span><span class="p">(</span><span class="n">string</span> <span class="n">format</span><span class="p">,</span> <span class="n">any</span> <span class="n">val1</span><span class="p">,</span> <span class="n">any</span> <span class="n">val2</span><span class="p">,</span> <span class="p">...)</span>
</code></pre></div></div> <p>Formats given values using standard syntax of C <code class="language-plaintext highlighter-rouge">printf</code> function (google “printf” for format details). However, it is limited to formatting up to 7 values.</p> <ul> <li>The format string is limited to 1024 characters</li> </ul><hr /> <h3 class="d-inline-block" id="string_format_array"> <a href="#string_format_array" class="anchor-heading" aria-labelledby="string_format_array"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>string_format_array</strong> </h3> <p class="label label-green">lib.strings.h</p> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">string</span> <span class="n">string_format_array</span><span class="p">(</span><span class="n">string</span> <span class="n">format</span><span class="p">,</span> <span class="kt">int</span> <span class="n">array</span><span class="p">)</span>
</code></pre></div></div> <p>The same as string_format, but accepts an array of parameters.</p><hr /> <h3 class="d-inline-block" id="string_replace"> <a href="#string_replace" class="anchor-heading" aria-labelledby="string_replace"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>string_replace</strong> </h3> <p class="label label-green">lib.strings.h</p> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">string</span> <span class="n">string_replace</span><span class="p">(</span><span class="n">string</span> <span class="n">str</span><span class="p">,</span> <span class="n">string</span> <span class="n">search</span><span class="p">,</span> <span class="n">string</span> <span class="n">replace</span><span class="p">)</span>
</code></pre></div></div> <p>Replaces all occurances of a given search string in a string with a given replacement string.</p><hr /> <h3 id="string_split"> <a href="#string_split" class="anchor-heading" aria-labelledby="string_split"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>string_split</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">array</span> <span class="n">string_split</span><span class="p">(</span><span class="n">string</span> <span class="n">text</span><span class="p">,</span> <span class="n">split</span><span class="p">)</span>
2022-04-07 13:19:56 +00:00
</code></pre></div></div> <p>Takes a string and a seperator, searches the string for all instances of the seperator, and returns a temp array filled with the pieces of the string split at each instance. If you give an empty string as the seperator, the string is split into individual characters. You can use this to search for a substring in a string like this: <code class="language-plaintext highlighter-rouge">strlen(get_array(string_split(haystack, needle), 0))</code></p><hr /> <h3 id="string_to_case"> <a href="#string_to_case" class="anchor-heading" aria-labelledby="string_to_case"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>string_to_case</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">string</span> <span class="n">sfall_func2</span><span class="p">(</span><span class="s">"string_to_case"</span><span class="p">,</span> <span class="n">string</span> <span class="n">text</span><span class="p">,</span> <span class="kt">int</span> <span class="n">toCase</span><span class="p">)</span>
</code></pre></div></div> <p>Converts all letters in the given string to the specified case.</p> <div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>toCase: 0 - lowercase, 1 - uppercase
2021-06-01 04:05:32 +00:00
</code></pre></div></div> <p>NOTE: this function works only for English letters of A-Z/a-z.</p><hr /> <h3 id="strlen"> <a href="#strlen" class="anchor-heading" aria-labelledby="strlen"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>strlen</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">int</span> <span class="n">strlen</span><span class="p">(</span><span class="n">string</span> <span class="n">text</span><span class="p">)</span>
</code></pre></div></div> <p>Returns string length.</p><hr /> <h3 id="substr"> <a href="#substr" class="anchor-heading" aria-labelledby="substr"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>substr</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">string</span> <span class="n">substr</span><span class="p">(</span><span class="n">string</span> <span class="n">text</span><span class="p">,</span> <span class="kt">int</span> <span class="n">start</span><span class="p">,</span> <span class="kt">int</span> <span class="n">length</span><span class="p">)</span>
2026-01-27 07:17:52 +00:00
</code></pre></div></div> <p>Cuts a substring from a string starting at “start” up to “length” characters. The first character position is 0 (zero).</p> <ul> <li>If start is negative - it indicates a position starting from the end of the string (for example <code class="language-plaintext highlighter-rouge">substr("test", -2, 2)</code> will return last 2 charactes: “st”).</li> <li>If length is negative - it means so many characters will be omitted from the end of string (example: <code class="language-plaintext highlighter-rouge">substr("test", 0, -2)</code> will return string without last 2 characters: “te”).</li> <li>If length is zero - it will return a string from the starting position to the end of the string. <strong>New behavior</strong> for sfall 4.2.2/3.8.22</li> </ul> </main> <hr> <footer> <div class="d-md-none mt-4 fs-2"> This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll. </div> </footer> </div> </div> <div class="search-overlay"></div> </div> </body> </html>