我有一个带有短文本字符串的字符串变量。我想用包含在单个单元格内的关键字来代替所有的文本字符串。如何根据单元格中包含的关键字使用数字替换文本字符串
例如:一些细胞状态“我喜欢猫”,而其他细胞“我不喜欢湿狗的气味”。
我想为包含单词cat的所有单元格赋值1,并将数字2赋值给包含单词dog的所有单元格。
我该怎么做?
我有一个带有短文本字符串的字符串变量。我想用包含在单个单元格内的关键字来代替所有的文本字符串。如何根据单元格中包含的关键字使用数字替换文本字符串
例如:一些细胞状态“我喜欢猫”,而其他细胞“我不喜欢湿狗的气味”。
我想为包含单词cat的所有单元格赋值1,并将数字2赋值给包含单词dog的所有单元格。
我该怎么做?
这将使1 NewVar当“猫”出现在OldVar,2为“狗”,3为“小白鼠”:
do repeat wrd="cat" "dog" "mouse"/val= 1 2 3.
if index(OldVar, wrd)>0 NewVar=val.
end repeat.
这是唯一的好,如果永远不会有一只猫和一只狗在同一句话。如果你有这样的情况下,你应该走这条路:
do repeat wrd="cat" "dog" "mouse"/NewVar=cat dog mouse.
compute NewVar=index(OldVar, wrd)>0.
end repeat.
这将为每个可能的单词一个新的变量,在当它不是单词出现在OldVar 0的情况下投入1。
显然你要打开语法窗口并输入以下命令:
COMPUTE newvar=INDEX(UPCASE(VAR1),"ABCD")>0
newvar是新变量的名称。 VAR1是要搜索的变量的名称。 ABCD是要搜索的文本。 注意:这必须在大写字母。
如果找到文本,newvar将接收值1。
你的答案比我找到的还要好,谢谢! – Program
如果您在文本中使用大写字母时遇到问题,则可以像使用解决方案一样使用UPCASE功能。 –