XLFSTR ;ISC-SF/STAFF - String Functions ;04/18/12
Source file <XLFSTR.m>
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| DVARS(LIST) | ;return a delimiter for a list of variables
|
|
| TRIM(%X,%F,%V) | ;Trim spaces\char from front(left)/back(right) of string
|
|
| LJ(%,%1,%2) | ;Left justify
|
|
| REPLACE(IN,SPEC) | ;See $$REPLACE in MDC minutes.
|
|
| RJ(%,%1,%2) | ;Right justify
|
|
| QUOTE(%) | ;Add quotes to value for concatenation
|
|
| RE2 | ||
| UP(X) |
|
|
| REPEAT(X,Y) | ;
|
|
| RE1 | ||
| CJ(%,%1,%2) | ;Center Justify
|
|
| SENTENCE(%X) | ;
; Converts a string into proper sentence case (first letter of each sentence ; upper case, all the others lower case) ; Example Usage: ; W $$SENTENCE^XLFSTR("HELLO WORLD!!! THIS IS A CAPITALIZED SENTENCE. (this isn't.)") ; produces ; Hello world!!! This is a capitalized sentence. This isn't. |
|
| SPLIT(%SRC,%DLM,%VLIST) | ;split a string by delimiter vars in list
|
|
| STRIP(X,Y) |
|
|
| RE3 | ||
| INVERT(X) | ;
|
|
| LOW(X) |
|
|
| TITLE(%X) | ;
; Converts a string into TITLE CASE format (first letter of each word is uppercase) ; Example Usage: ; W $$TITLE^XLFSTR("THIS IS CAPITALIZED. (this isn't.)") ; produces ; This Is Capitalized. This Isn't. |
|
| Name | Line Occurrences |
|---|---|
| Function Call: WRITE |
|
| Function Call: WRITE |
|
| Name | Line Occurrences |
|---|---|
| $$DVARS | SPLIT+4 |
| $$LOW | SENTENCE+14, TITLE+13 |
| $$UP | TRIM+2, SENTENCE+17, TITLE+16 |
| RE1 | REPLACE+3 |
| RE2 | RE1 |
| RE3 | REPLACE+4 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| % | REPEAT+1~, REPEAT+2*, REPEAT+3, INVERT+1~*, INVERT+2, RJ~, RJ+2*, RJ+3, RJ+4, LJ~ , LJ+2*, LJ+3, LJ+4, CJ~, CJ+2*, CJ+4, QUOTE~, QUOTE+1*, QUOTE+2 |
| %( | QUOTE+1* |
| %1 | INVERT+1~*, REPLACE+1~, REPLACE+2*, REPLACE+4, RE2+1, RJ~, RJ+2*, RJ+3, LJ~, LJ+2* , LJ+3, CJ~, CJ+2*, CJ+4 |
| %2 | REPLACE+1~, REPLACE+4*, RE2+1*, RE3, RE3+1, RJ~, RJ+3, LJ~, LJ+3, CJ~ , CJ+3 |
| %3 | REPLACE+1~, REPLACE+2*, REPLACE+3*, RE1, RE2, RJ+1~, RJ+3*, RJ+4, LJ+1~, LJ+3* , LJ+4, CJ+1~, CJ+2*, CJ+3*, CJ+4 |
| %4 | REPLACE+1~, RE1*, RE2, RE2+1, CJ+1~, CJ+3*, CJ+4 |
| %5 | REPLACE+1~, RE1*, RE2, RE2+1 |
| %6 | REPLACE+1~, REPLACE+2*, REPLACE+3* |
| %6( | REPLACE+2*, REPLACE+3 |
| %7 | REPLACE+1~, REPLACE+2*, RE2, RE2+1*, RE3 |
| %8 | REPLACE+1~, REPLACE+4*, REPLACE+5, RE3*, RE3+1* |
| %8( | RE2*, RE3+1 |
| %C | SENTENCE+13~, SENTENCE+16*, SENTENCE+17, SENTENCE+18, TITLE+12~, TITLE+15*, TITLE+16, TITLE+17 |
| %DLM | SPLIT~, SPLIT+4*, SPLIT+5 |
| %F | TRIM~, TRIM+2*, TRIM+4, TRIM+6 |
| %I | SENTENCE+13~, SENTENCE+15*, SENTENCE+16, SENTENCE+17, TITLE+12~, TITLE+14*, TITLE+15, TITLE+16 |
| %L | TRIM+1~, TRIM+2*, TRIM+6*, TRIM+7, TRIM+8 |
| %P | SENTENCE+13~, SENTENCE+14*, SENTENCE+17*, SENTENCE+18*, TITLE+12~, TITLE+13*, TITLE+16*, TITLE+17* |
| %R | TRIM+1~, TRIM+2*, TRIM+4*, TRIM+7, TRIM+8 |
| %S | SENTENCE+13~, SENTENCE+14*, SENTENCE+16, SENTENCE+17*, SENTENCE+19, TITLE+12~, TITLE+13*, TITLE+14, TITLE+15, TITLE+16* , TITLE+19 |
| %SRC | SPLIT~, SPLIT+5 |
| %V | TRIM~, TRIM+2*, TRIM+4, TRIM+6, TRIM+7 |
| %VLIST | SPLIT~, SPLIT+4, SPLIT+5, DVARS+1 |
| %X | TRIM~, TRIM+2, TRIM+4, TRIM+6, TRIM+7, TRIM+8, SENTENCE~, SENTENCE+14, SENTENCE+15, TITLE~ , TITLE+13 |
| DV | SPLIT+3~, SPLIT+4*, SPLIT+5 |
| I | SPLIT+3~, SPLIT+5*, SPLIT+6 |
| IN | REPLACE~, REPLACE+1, REPLACE+2, RE1, RE3 |
| LIST | DVARS~ |
| SPEC | REPLACE~, REPLACE+1 |
| SPEC( | REPLACE+2, REPLACE+3, RE2 |
| V | SPLIT+3~, SPLIT+5* |
| X | UP~, LOW~, STRIP~, REPEAT~, REPEAT+1, REPEAT+2, INVERT~, INVERT+1 |
| Y | STRIP~, REPEAT~, REPEAT+1, REPEAT+2 |