我有这个:
fghs13412asdf
dfs234245gk
希望它返回最后一个数字字符的位置,如下所示:
5
3
我尝试了很多东西,没有任何工作。也许LibreOffice中的某些东西与excel不同,在那里我看到了所有的例子。这是一个应该是直截了当的,并且错误地返回: https://www.youtube.com/watch?v=joZa6-cJYIc
答案 0 :(得分:1)
您是否需要第一个数字字符(如标题中)或最后字符(如问题正文中)的位置?
如果它是第一个,那么使用正则表达式的简单SEARCH()函数应该是技巧,例如=SEARCH("([:digit:])";A1)
。
如果最后一个,从字符串的开始算起,则可以使用不同的正则表达式(改编自{{3 }}):=SEARCH("[0-9][^[0-9]]+$";A1)
。
如果您需要最后数字字符的位置,从字符串的结束计算,只需从LEN中减去步骤2中计算的值整个字符串的():=LEN(A1)-(SEARCH("[0-9][^[0-9]]+$";A1))
。
你会得到#VALUE!如果没有数字字符,或输入字符串的最后一个字符是数字,则出错。请注意,字符串中的空格将被忽略: