Tokenize a string: Difference between revisions
Content added Content deleted
mNo edit summary |
mNo edit summary |
||
Line 3,579: | Line 3,579: | ||
{","}toksep // set a new token separator |
{","}toksep // set a new token separator |
||
{"String: ",s} |
{"String: ",s} |
||
{"\nArray:\n",aS}, |
{"\nArray:\n",aS}, |
||
{"\nSize="}size(aS),println // "size" return an array: {dims,#rows,#cols,#pages} |
{"\nSize="}size(aS),println // "size" return an array: {dims,#rows,#cols,#pages} |
||
Line 3,597: | Line 3,597: | ||
.locals |
.locals |
||
splitdate(_DATETIME_) |
splitdate(_DATETIME_) |
||
_V1_="", _V2_="", |
|||
_SEP_=0,gettoksep,mov(_SEP_) // "gettoksep" return actual token separator |
_SEP_=0,gettoksep,mov(_SEP_) // "gettoksep" return actual token separator |
||
{","}toksep, // set a new token separator |
{","}toksep, // set a new token separator |
||
_NEWARRAY_={} |
|||
⚫ | |||
{ |
{1},$( _DATETIME_ ), |
||
⚫ | |||
{_SEP_}toksep // restore |
{_SEP_}toksep // restore ols token separator |
||
_NEWARRAY_={},{_V1_,_V2_},pushall(_NEWARRAY_) |
|||
{_NEWARRAY_} |
{_NEWARRAY_} |
||
back |
back |
||
Line 3,611: | Line 3,610: | ||
{_X_},trunc,mov(part_int), |
{_X_},trunc,mov(part_int), |
||
{_X_},minus(part_int),xtostr, |
{_X_},minus(part_int),xtostr, |
||
mov(part_dec),part_dec+=2, |
mov(part_dec),part_dec+=2, // "part_dec+=2", delete "0." from "part_dec" |
||
{part_dec}xtonum,mov(part_dec) |
|||
_NEWARRAY_={},{part_int,part_dec},pushall(_NEWARRAY_) |
_NEWARRAY_={},{part_int,part_dec},pushall(_NEWARRAY_) |
||
{_NEWARRAY_} |
{_NEWARRAY_} |
||
Line 3,618: | Line 3,618: | ||
split(_S_,_T_) |
split(_S_,_T_) |
||
_NEWARRAY_={},_VAR1_=0,_SEP_=0,gettoksep,mov(_SEP_) |
_NEWARRAY_={},_VAR1_=0,_SEP_=0,gettoksep,mov(_SEP_) |
||
{_T_}toksep,totaltoken(_S_), |
{_T_}toksep,totaltoken(_S_), |
||
mov(_VAR1_), // for total tokens |
|||
_VAR2_=1, // for real position of tokens into the string |
|||
___SPLIT_ITER: |
___SPLIT_ITER: |
||
{_VAR2_}$( _S_ ),push(_NEWARRAY_) |
{_VAR2_}$( _S_ ),push(_NEWARRAY_) |
||
++_VAR2_,--_VAR1_ |
++_VAR2_,--_VAR1_ |
||
{ _VAR1_ },jnz(___SPLIT_ITER) |
{ _VAR1_ },jnz(___SPLIT_ITER) // jump to "___SPLIT_ITER" if "_VAR1_" is not zero. |
||
clear(_VAR2_),clear(_VAR1_) |
clear(_VAR2_),clear(_VAR1_) |
||
{_SEP_}toksep |
{_SEP_}toksep |