问题描述
我正在SPSS中记录一些公开的调查答复,并且只想保留常用字符a-z和1-9
我已经完成了rtrim和ltrim的工作,大多数情况下都可以使用,但是有些字符串的尾部还有空格,我认为这些空格实际上不是空格,而是隐藏的字符。 我还删除了标点符号,例如“?”但我想肯定有比通过每种方法更直接的方法。
例如我需要
“考试!”或“考试!!-请吗?”
说“例子”
解决方法
以下语法将创建一个新的干净字段,并仅将原始字段中的数字和字母(大写或小写)复制到该字段。
请注意,我使用 15 作为新字段宽度和循环中的迭代次数-请将15更改为原始字段的实际宽度
do repeat val=1 to 15.
compute #i = number(char.substr(OrigField,val,1),PIB).
if range(#i,48,57) or
range(#i,65,90) or
range(#i,97,122)
CleanField=concat(rtrim(CleanField),char.substr(OrigField,1)).
end repeat.
exe.
请参阅@ user45392建议的链接,以了解其工作方式/原因。 另请参见this list,以获取您可以添加到循环中的其他值。