hexagon logo

Testing Operator input for special characters or wild cards

Anyone have an idea how to test and stop operators inputting \/:*?<>| in comments? If it contains those then it will comment back and tell them to try again? im trying to use an if_goto statements.

[C1 =COMMENT/INPUT,NO,FULL SCREEN=NO,
ENTER SERIAL NUMBER
ASSIGN/NEWSN=C1.INPUT
IF_GOTO/NEWSN=="/" ,GOTO = DEATH
IF_GOTO/NEWSN==":" ,GOTO = DEATH
IF_GOTO/NEWSN=="*" ,GOTO = DEATH
IF_GOTO/NEWSN=="?" ,GOTO = DEATH
IF_GOTO/NEWSN=="<" ,GOTO = DEATH
IF_GOTO/NEWSN==">" ,GOTO = DEATH
IF_GOTO/NEWSN=="|" ,GOTO = DEATH
IF_GOTO/NEWSN=="0" ,GOTO = DEATH
GOTO/LIVE
DEATH =LABEL/
IF/1
COMMENT/OPER,NO,FULL SCREEN=YES,AUTO-CONTINUE=YES,TIME DELAY=10,
DO NOT USE SPECIAL CHARACTERS FOR THE INPUT.
TRY AGAIN!
GOTO/C1
END_IF/
LIVE =LABEL/​]
Parents
  • THIS WORKS, but apparently it doesn't like \ key. wont input

    C1 =COMMENT/INPUT,NO,FULL SCREEN=NO,
    ENTER SERIAL NUMBER
    ASSIGN/NEWSN=C1.INPUT
    IF_GOTO/INDEX(NEWSN,"/")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,":")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"*")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"<")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,">")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"?")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"|")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"_")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN," ")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"0")<1,GOTO = DEATH
    IF_GOTO/1,GOTO = DEATH
    GOTO/LIVE
    DEATH =LABEL/
    IF/1
    COMMENT/OPER,NO,FULL SCREEN=YES,AUTO-CONTINUE=YES,TIME DELAY=10,
    DO NOT USE SPECIAL CHARACTERS FOR THE INPUT.
    TRY AGAIN!
    GOTO/C1
    END_IF/
    GOTO/LIVE
    LIVE =LABEL/​
Reply
  • THIS WORKS, but apparently it doesn't like \ key. wont input

    C1 =COMMENT/INPUT,NO,FULL SCREEN=NO,
    ENTER SERIAL NUMBER
    ASSIGN/NEWSN=C1.INPUT
    IF_GOTO/INDEX(NEWSN,"/")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,":")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"*")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"<")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,">")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"?")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"|")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"_")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN," ")>0,GOTO = DEATH
    IF_GOTO/INDEX(NEWSN,"0")<1,GOTO = DEATH
    IF_GOTO/1,GOTO = DEATH
    GOTO/LIVE
    DEATH =LABEL/
    IF/1
    COMMENT/OPER,NO,FULL SCREEN=YES,AUTO-CONTINUE=YES,TIME DELAY=10,
    DO NOT USE SPECIAL CHARACTERS FOR THE INPUT.
    TRY AGAIN!
    GOTO/C1
    END_IF/
    GOTO/LIVE
    LIVE =LABEL/​
Children