Excel使用公式截取字符串「终于解决」

Excel使用公式截取字符串「终于解决」例如一个文件列表:E:\Nginx\nginx\trunk\src\core\nginx.cE:\Nginx\nginx\trunk\src\http\ngx_http.cE:\Nginx\nginx\trunk\src\os\win32\ngx_os.hE:\Nginx\nginx\branches\stable-1.2\src\core\nginx.hE:\Nginx\ng

大家好,欢迎来到IT知识分享网。

例如一个文件列表:

E:\Nginx\nginx\trunk\src\core\nginx.c
E:\Nginx\nginx\trunk\src\http\ngx_http.c
E:\Nginx\nginx\trunk\src\os\win32\ngx_os.h
E:\Nginx\nginx\branches\stable-1.2\src\core\nginx.h
E:\Nginx\nginx\trunk\src\core\ngx_buf.c

现在需要截取文件名。

多么希望有一个LASTINDEXOF或者RIGHTFIND之类的函数可以直接用啊,可惜。。只好想歪门邪道了:

RIGHT(A1, LEN(A1)-FIND(“*”, SUBSTITUTE(A1, “\”, “*”, LEN(A1)-LEN(SUBSTITUTE(A1,”\”,””)))))

注:字符串长度减掉把“\”去掉的字符串长度,等于“\”个数,也就是最后一个“\”的位置。

另一个同事直接在SQLServer中使用SQL语句截取的,思路也很奇葩:

SELECT REVERSE
(
SUBSTRING(
REVERSE(B),
CHARINDEX(‘.’,REVERSE(B))+1 ,
CHARINDEX(‘\’,REVERSE(B))-CHARINDEX(‘.’,REVERSE(B))-1
)
) FROM C

注:先反转,找到第一个“\”左侧的子串,再反转。不过在其他数据库下不能用,比较可惜。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/25094.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信