我有一列数据,假设它看起来像这样:
This is text: part 2
This is text
This is also text: part 3
我需要删除 : 之后的所有内容,以便所有三行数据都显示为:
This is text
This is text
This is also text
有谁知道如何在 SAS 中执行此操作?我通常会删除标点符号等...但还没有必要删除字符后的所有内容。
任何指导将不胜感激 - 谢谢。
最佳答案
SCAN()
函数可以很好地解决这个问题。
want = scan(have,1,':');
唯一的问题可能是文本是否以冒号开头。如果文本以冒号(或多个冒号)开头,则 SCAN(have,1,':')
将返回前导冒号之后的第一个文本 block 。如果您将修饰符“M”添加到 SCAN()
调用,那么它将把多余的冒号视为表示缺失值并返回一个空字符串。
want=scan(have,1,':','m');
关于text - SAS:删除一个字符后的所有文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33759161/