TAQOZ Reloaded v2.8 - useful string words
TAQOZ is a bit light when it comes to string functions. Looking at Tachyon, the following words looked useful and have been adapted for TAQOZ Reloaded:-
--- Some useful Tachyon string functions, adapted for TAQOZ v2.8 - Bob Edwards Mar 2022
--- Locate the addr of the first instance of ch in the string str and return that, else null
pub LOCATE$ ( ch str -- str | 0 )
TRUE >L
DUP LEN$ --- chr str count
ADO
DUP IC@ =
IF
DROP I
L> DROP FALSE >L
LEAVE
THEN
LOOP
L>
IF
DROP 0
THEN
;
--- append str1 at the end of str2
pub APPEND$ ( str1 str2 -- ) DUP LEN$ + $! ;
--- add a character to a string
pub +CHAR ( ch str -- ) DUP LEN$ + OVER 1+ C~ C! ;
--- give a copy of the rightmost len chars of str
pub RIGHT$ ( str1 len -- str2 ) OVER LEN$ SWAP - + ;
--- Extract the substring of str starting at offset len chars long
pub MID$ ( str1 offset len -- str2 ) -ROT + SWAP
--- leftmost len chars of str - destructive, uses same string
pub LEFT$ ( str len -- str ) OVER+ C~ ;
{
--- Some test strings
20 bytes mystring
" Hello" mystring $!
5 bytes name
" Bob" name $!
}

