我不知道该如何提出这个问题。
我面临一个复杂的挑战,我不确定如何在 Excel 中解决。
我有一列包含较长的可变长度字符串,例如
c68d7a51-5cef-4a5c-b417-b2751fe9754b
c68d7a51-5cef-4a5c-b417-b2751fe9754b-0
c68d7a51-5cef-4a5c-b417-b2751fe9754b-1
09573f-1780c84f-e5ff-85821a-6236e0399d
09573f-1780c84f-e5ff-85821a-6236e0399d-10
09573f-1780c84f-e5ff-85821a-6236e0399d-123
对于以“-***”结尾的字符串,我需要一个新列,该列返回不带结尾右侧子字符串的字符串,否则为空。结尾子字符串位于“-”特定字符后 1 到 3 个字符的长度范围内。根据注释,我还需要注意,我无法从左侧开始工作,因为字符串的长度和“-”位置会发生变化。唯一不变的是,其中一些字符串在最后一个“-”后有 1 到 3 位数字的子子字符串值。
到目前为止我的提纲是这样的
=IF(RIGHT(A1,4) contains "-", RIGHT(A1, LEN(A1) - number_of_chars_to_remove), else null.
如果您不介意的话,我该如何实现这一目标?
感谢您的帮助,谢谢!
答案1
答案2
在我看来,根据您的示例数据,您可以计算字符串,如果它有 5 个破折号,则返回前 38 个字符,否则返回 NULL。这会简单得多。38 很重要,因为它是到第五个破折号为止的字符串长度。