我在QBasic中创建一个简单的聊天程序,它将根据用户输入中存在的某些特定关键词回答问题。因此,我需要一种方法来搜索字符串中的子字符串(即特定单词)。 所以,请帮助我。
答案 0 :(得分:4)
要确定字符串是否包含某个(子)字符串,您可以这样做:
text$ = "nonsense !"
IF INSTR( text$, "sense" ) >= 1 THEN
PRINT "This text makes sense !"
END IF
不,我无法测试这个,因为我的PC上不再有QBasic ;-) 根据上面评论的链接> = 1是好的
答案 1 :(得分:3)
我认为INSTR通常使用如下:
sent$ = "This is a sentence"
PRINT INSTR(1, sent$, "is")
PRINT INSTR(4, sent$, "is")
PRINT INSTR(1, sent$, "word")
第一个PRINT命令将打印一个'3',因为句子中“is”的第一个位置位于第3位。(''中的'是')
第二个PRINT命令开始在位置4('This'中的's')搜索,因此在位置6找到“is”。因此它将打印'6'。
第三个PRINT命令将打印一个'0',因为句子中没有“word”的实例。
答案 2 :(得分:1)
计算字符串中子字符串的出现次数。
T$ = "text to be searched and to be displayed"
S$ = "to"
l = 1
DO
x = INSTR(l, T$, S$)
IF x THEN
n = n + 1
l = x + LEN(S$)
ELSE
EXIT DO
END IF
LOOP
PRINT "text '"; S$; "' matches"; n; "times."