How to resolve the algorithm Substring/Top and tail step by step in the REXX programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm Substring/Top and tail step by step in the REXX programming language

Table of Contents

Problem Statement

The task is to demonstrate how to remove the first and last characters from a string. The solution should demonstrate how to obtain the following results:

If the program uses UTF-8 or UTF-16, it must work on any valid Unicode code point, whether in the Basic Multilingual Plane or above it. The program must reference logical characters (code points), not 8-bit code units for UTF-8 or 16-bit code units for UTF-16. Programs for other encodings (such as 8-bit ASCII, or EUC-JP) are not required to handle all Unicode characters.

Let's start with the solution:

Step by Step solution about How to resolve the algorithm Substring/Top and tail step by step in the REXX programming language

Source code in the rexx programming language

/*REXX program demonstrates removal of  1st/last/1st-and-last  characters from a string.*/
@ = 'abcdefghijk'
say '                  the original string ='  @
say 'string first        character removed ='  substr(@, 2)
say 'string         last character removed ='  left(@, length(@) -1)
say 'string first & last character removed ='  substr(@, 2, length(@) -2)
                                                 /*stick a fork in it,  we're all done. */
   /* ╔═══════════════════════════════════════════════════════════════════════════════╗
      ║  However, the original string may be null or exactly one byte in length which ║
      ║  will cause the  BIFs to fail because of  either zero  or  a negative length. ║
      ╚═══════════════════════════════════════════════════════════════════════════════╝ */


/*REXX program demonstrates removal of  1st/last/1st-and-last  characters from a string.*/
@ = 'abcdefghijk'
say '                  the original string ='  @
say 'string first        character removed ='  substr(@, 2)
say 'string         last character removed ='  left(@, max(0, length(@) -1))
say 'string first & last character removed ='  substr(@, 2, max(0, length(@) -2))
exit                                             /*stick a fork in it,  we're all done. */

                              /* [↓]  an easier to read version using a length variable.*/
@ = 'abcdefghijk'
L=length(@)
say '                  the original string ='  @
say 'string first        character removed ='  substr(@, 2)
say 'string         last character removed ='  left(@, max(0, L-1) )
say 'string first & last character removed ='  substr(@, 2, max(0, L-2) )


/*REXX program demonstrates removal of  1st/last/1st-and-last  characters from a string.*/
@ = 'abcdefghijk'
say '                  the original string =' @

parse var @ 2 z
say 'string first        character removed =' z

m=length(@) - 1
parse var @ z +(m)
say 'string         last character removed =' z

n=length(@) - 2
parse var @ 2 z +(n)
if n==0  then z=                                /*handle special case of a length of 2.*/
say 'string first & last character removed =' z /*stick a fork in it,  we're all done. */


  

You may also check:How to resolve the algorithm Mian-Chowla sequence step by step in the C# programming language
You may also check:How to resolve the algorithm FASTA format step by step in the C++ programming language
You may also check:How to resolve the algorithm Amb step by step in the AutoHotkey programming language
You may also check:How to resolve the algorithm Hex words step by step in the Python programming language
You may also check:How to resolve the algorithm Church numerals step by step in the Octave programming language