<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>idea Connect: Add text functions, such as UPPER() and REPLACE() in ArcGIS Survey123 Ideas</title>
    <link>https://community.esri.com/t5/arcgis-survey123-ideas/connect-add-text-functions-such-as-upper-and/idi-p/1634619</link>
    <description>&lt;P&gt;I'm having a bear of a time with trying to get the functionality of basic text functions to work in Survey123 Connect.&lt;/P&gt;&lt;P&gt;I'm talking things like UPPER(), LOWER(), and REPLACE().&lt;/P&gt;&lt;P&gt;To get UPPER to work, the other day, I have to do an&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;if(selected(${quest1} , "enh"), "ENH", "")&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I have no idea how I'd get a REPLACE() to work.&lt;/P&gt;&lt;P&gt;I know you can sometimes use &lt;A href="https://community.esri.com/t5/arcgis-survey123-questions/how-to-force-a-text-to-be-all-capital-letters/td-p/1065379" target="_self"&gt;native excel formatting&lt;/A&gt; to get this to work, but it is incredible to me that we don't appear to have anything that can just like. make everything uppercase.&lt;/P&gt;&lt;P&gt;Please add text functions.&lt;/P&gt;</description>
    <pubDate>Mon, 21 Jul 2025 16:29:56 GMT</pubDate>
    <dc:creator>AlfredBaldenweck</dc:creator>
    <dc:date>2025-07-21T16:29:56Z</dc:date>
    <item>
      <title>Connect: Add text functions, such as UPPER() and REPLACE()</title>
      <link>https://community.esri.com/t5/arcgis-survey123-ideas/connect-add-text-functions-such-as-upper-and/idi-p/1634619</link>
      <description>&lt;P&gt;I'm having a bear of a time with trying to get the functionality of basic text functions to work in Survey123 Connect.&lt;/P&gt;&lt;P&gt;I'm talking things like UPPER(), LOWER(), and REPLACE().&lt;/P&gt;&lt;P&gt;To get UPPER to work, the other day, I have to do an&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;if(selected(${quest1} , "enh"), "ENH", "")&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I have no idea how I'd get a REPLACE() to work.&lt;/P&gt;&lt;P&gt;I know you can sometimes use &lt;A href="https://community.esri.com/t5/arcgis-survey123-questions/how-to-force-a-text-to-be-all-capital-letters/td-p/1065379" target="_self"&gt;native excel formatting&lt;/A&gt; to get this to work, but it is incredible to me that we don't appear to have anything that can just like. make everything uppercase.&lt;/P&gt;&lt;P&gt;Please add text functions.&lt;/P&gt;</description>
      <pubDate>Mon, 21 Jul 2025 16:29:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-survey123-ideas/connect-add-text-functions-such-as-upper-and/idi-p/1634619</guid>
      <dc:creator>AlfredBaldenweck</dc:creator>
      <dc:date>2025-07-21T16:29:56Z</dc:date>
    </item>
    <item>
      <title>Re: Connect: Add text functions, such as UPPER() and REPLACE()</title>
      <link>https://community.esri.com/t5/arcgis-survey123-ideas/connect-add-text-functions-such-as-upper-and/idc-p/1646349#M3402</link>
      <description>&lt;P&gt;Hi Alfred&lt;/P&gt;&lt;P&gt;If you have a signed in user on Survey123 (and not a public survey), then you can use JavaScript functions to do that, and more.&lt;/P&gt;</description>
      <pubDate>Thu, 28 Aug 2025 06:49:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-survey123-ideas/connect-add-text-functions-such-as-upper-and/idc-p/1646349#M3402</guid>
      <dc:creator>DeonLengton</dc:creator>
      <dc:date>2025-08-28T06:49:10Z</dc:date>
    </item>
    <item>
      <title>Re: Connect: Add text functions, such as UPPER() and REPLACE()</title>
      <link>https://community.esri.com/t5/arcgis-survey123-ideas/connect-add-text-functions-such-as-upper-and/idc-p/1646925#M3407</link>
      <description>&lt;P&gt;Hi Deon,&lt;/P&gt;&lt;P&gt;To be fair, I had not tried JavaScript for this.&amp;nbsp;&lt;/P&gt;&lt;P&gt;So, with a little help from &lt;A href="https://www.w3schools.com/jsref/jsref_replace.asp" target="_blank" rel="noopener"&gt;w3schools&lt;/A&gt;&amp;nbsp;and &lt;A href="https://stackoverflow.com/questions/542232/in-javascript-how-can-i-perform-a-global-replace-on-string-with-a-variable-insi" target="_self"&gt;Stack Overflow&lt;/A&gt;, I gave it a shot.&lt;/P&gt;&lt;P&gt;Here are the functions I used:&lt;/P&gt;&lt;LI-CODE lang="c"&gt;/*
 * JavaScript functions for Survey123
 */
function upperWrap(arg1) {
    return arg1.toUpperCase();
}
function lowerWrap(arg1) {
    return arg1.toLowerCase();
}
function replace1Normal(arg1, arg2, arg3) {
    arg1 = arg1.replace(arg2, arg3);
    return arg1;
}
function replace2All(arg1, arg2, arg3) {
    arg1 = arg1.replaceAll(arg2, arg3);
    return arg1;
}
function replace3GlobalNoVar(arg1, arg2, arg3) {
    arg1 = arg1.replace(/e/g, arg3);
    return arg1;
}
function replace3GlobalVarFail(arg1, arg2, arg3) {
    arg1 = arg1.replace(/arg2/g, arg3);
    return arg1;
}
function replace3GlobalVarPass(arg1, arg2, arg3) {
    var regex = new RegExp(arg2, "g");
    arg1 = arg1.replace(regex, arg3);
    return arg1;
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AlfredBaldenweck_0-1756491085097.png" style="width: 999px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/139662i13C5F5C7A24F96FC/image-size/large?v=v2&amp;amp;px=999" role="button" title="AlfredBaldenweck_0-1756491085097.png" alt="AlfredBaldenweck_0-1756491085097.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;To summarize: replaceAll() does not work, so you have to construct a Regex object if you want to be able to replace all instances of a substring in a string. Ok, cool, learning moment.&lt;/P&gt;&lt;P&gt;So, to your point, yes, you can for sure use JavaScript to get the text functions. Takes some trial and error, but it is possible.&lt;/P&gt;&lt;P&gt;That being said, it feels pretty silly to have to use JavaScript just to capitalize my input, since all I did was create a wrapper function to use a normal string method. Kind of like breaking out a carpet cleaner for a bathmat. Yeah, it works, but more of a production than it needs to be. Just look at the calculation field for each of these questions, not even touching the JavaScript.&lt;/P&gt;&lt;TABLE border="1" width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="50%"&gt;JavaScript&lt;/TD&gt;&lt;TD width="50%"&gt;Ideal setup&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="50%"&gt;pulldata("@javascript", "functions.js", "upperWrap", ${base})&lt;/TD&gt;&lt;TD width="50%"&gt;upper(${base}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="50%"&gt;pulldata("@javascript", "functions.js", "lowerWrap", ${base})&lt;/TD&gt;&lt;TD width="50%"&gt;lower(${base})&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="50%"&gt;pulldata("@javascript", "functions.js", "replace1Normal", ${base}, "e", "a")&lt;/TD&gt;&lt;TD width="50%"&gt;replace(${base}, "e", "a")&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;There's also the frustration that comes with developing in a program that can do all this stuff normally but not being able to use any of it for your survey since Excel is just the development medium. For a different example of this, see my &lt;A href="https://community.esri.com/t5/arcgis-survey123-ideas/connect-unique-function/idi-p/1616698" target="_blank" rel="noopener"&gt;Idea requesting a UNIQUE() function&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To be fair, I'm not sure how many people are using public surveys in general (I certainly am not), but like. I don't think you should be locked out of basic text functions just because the survey is public? Depending on the survey, you can do it as part of whatever your post-processing is, but again, that's a complication that probably doesn't need to be there.&amp;nbsp;&lt;/P&gt;&lt;P&gt;As an aside: The signed in thing, once I tested it, worked better than I thought it did, but I'm wondering why the JS will run if you're signed into any portal, not just the one the survey belongs to?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Anyway, all this to say that it is possible to get this functionality right now, but it adds complexity that could be avoided.&lt;/P&gt;</description>
      <pubDate>Fri, 29 Aug 2025 18:40:33 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-survey123-ideas/connect-add-text-functions-such-as-upper-and/idc-p/1646925#M3407</guid>
      <dc:creator>AlfredBaldenweck</dc:creator>
      <dc:date>2025-08-29T18:40:33Z</dc:date>
    </item>
    <item>
      <title>Re: Connect: Add text functions, such as UPPER() and REPLACE()</title>
      <link>https://community.esri.com/t5/arcgis-survey123-ideas/connect-add-text-functions-such-as-upper-and/idc-p/1695164#M3622</link>
      <description>&lt;P&gt;Relevant: This user needed an Upper() function on a public form&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.esri.com/t5/arcgis-survey123-questions/uppercase-text-conversion-in-public-web-forms-in/m-p/1693831" target="_blank"&gt;https://community.esri.com/t5/arcgis-survey123-questions/uppercase-text-conversion-in-public-web-forms-in/m-p/1693831&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 08 Apr 2026 19:14:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-survey123-ideas/connect-add-text-functions-such-as-upper-and/idc-p/1695164#M3622</guid>
      <dc:creator>AlfredBaldenweck</dc:creator>
      <dc:date>2026-04-08T19:14:58Z</dc:date>
    </item>
  </channel>
</rss>

