Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
manual:chapter3:strings [2017/09/02 11:43]
smartin [Commands for strings]
manual:chapter3:strings [2017/09/09 20:07] (current)
claudio [Commands for strings]
Line 6: Line 6:
  
 ---- ----
 +==== Length of strings ====
 +
 +A Unicode Code Point is an indivisible unit of text. A character is usually a single Code Point, but not necessarily. A character may be formed by a group of Unicode Code Points that includes a starter character and optionally a series of overlapping characters or modifiers.
 +
 +There are separate commands to measure the length of a string. The most useful is ''​STRLEN'',​ which returns the number of characters in a string. The command ''​STRLENCP''​ returns the number of Code Points in the string.
 +
 +Finally, the command ''​SIZE''​ returns the size in bytes of the string.
 +
 +
 +
 +
 ==== Commands for strings ==== ==== Commands for strings ====
 The following table summarizes commands which can be applied to strings. The following table summarizes commands which can be applied to strings.
  
 | Command | Purpose | Example | | Command | Purpose | Example |
-| ''​→UTF8''​ | Convert to Unicode ​UTF8 object ​| | +| ''​→STR''​ | Convert ​object to string | ''​45,​569 →STR''​ yields ''"​45,​569"''​ | 
-| ''​UTF8→''​ | Convert ​from Unicode UTF8 object ​| | +| ''​STR→''​ | Compile a string to RPL objects((In this case, ''​OBJ→''​ can also be used.))| ''"​45,​569."​ STR→''​ yields ''​45.569.''​ | 
-| ''​SIZE''​ | | | +| ''​→NFC''​ | Normalize a string ​to Unicode ​NFC ''"​Hello World" →NFC''​ yields ''"​Hello World"''​
-| ''​STRLEN''​ | | | +| ''​UTF8→''​ | Convert ​string to list of Unicode ​Code Points | ''"​abcd" ​UTF8→''​ yields ''​{ #61h #62h #63h #64h }'' ​| 
-| ''​STRLENCP''​ | | | +| ''​→UTF8''​ | Convert list of Unicode Code Points to a UTF8 string | ''​{ #61h #62h #63h #64h } →UTF8''​ yields ''"​abcd"''​
-| ''​POS''​ | | | +| ''​SIZE''​ | Return the number of bytes used by a UTF8 string ​''"​Hello World" SIZE''​ yields ''​11''​
-| ''​POSREV''​ | | | +| ''​STRLEN''​ | Returns the length of the string, in characters ​''"​Hello World" STRLEN''​ yields ''​11'' ​
-| ''​NPOS''​ | | | +| ''​STRLENCP''​ | Returns the number of Unicode Code Points in a string ​''"​Hello World" STRLEN''​ yields ''​11'' ​
-| ''​NPOSREV''​ | | | +| ''​POS''​ | Returns the position of a substring within a string (0 if not found) ​''"​Hello World" "​Wor"​ POS''​ yields ''​7''​
-| ''​SREV''​ | | | +| ''​POSREV''​ | Returns the position of the substring counting from end of sting (0 if not found) ​''"​Hello World" "​Wor"​ POSREV''​ yields ''​3'' ​
-| ''​REPL''​ | | | +| ''​NPOS''​ | Same as ''​POS'',​ but starting the search from position N | | 
-| ''​SREPL''​ | | |+| ''​NPOSREV''​ | Same as ''​POSREV''​ starting at position N | | 
 +| ''​SREV''​ | Reverse the string ​''"​Hello World" SREV''​ yields ''"​dlroW olleH"'' ​
 +| ''​REPL''​ | Replace part of a string with another at the specified position ​''"​Hello World" 7 "​Universe"​ REPL''​ yields ''"​Hello Universe"''​
 +| ''​SREPL''​ | Search and replace a string (return 1 if successful, 0 if not) ''"​Hello World" "​World"​ "​Universe"​ SREPL''​ yields ''"​Hello Universe"​ 1'' ​|
 | ''​SUB''​ | | | | ''​SUB''​ | | |
 | ''​HEAD''​ | | | | ''​HEAD''​ | | |
  • manual/chapter3/strings.1504377805.txt.gz
  • Last modified: 2017/09/02 11:43
  • by smartin