如何获取路径中字符串
获得图纸路径如下:F:\\1-进行中的项目\\20-房地产开发有限公司\\1-5#住宅\\
想截取出 “房地产开发有限公司” 代码如何编写?求指教
20-房地产开发有限公司中20不是固定数字
vl-string-position 可派上用场 ;----------------------------------------------
;法一
(setq str "F:\\1-进行中的项目\\20-房地产开发有限公司\\1-5#住宅\\")
(repeat 2
(setq i (vl-string-search "-" str 0))
(setq str (substr str (+ i 2)))
)
(setq i (vl-string-search "\\" str 0))
(setq str (substr str 1 i))
;----------------------------------------------
;法二
(setq str "F:\\1-进行中的项目\\20-房地产开发有限公司\\1-5#住宅\\")
(setq str (vl-string-subst "" "-" str 0))
(setq i (vl-string-search "-" str 0))
(setq str (substr str (+ i 2)))
(setq i (vl-string-search "\\" str 0))
(setq str (substr str 1 i))
;---------------------------------------------- namezg 发表于 2014-10-30 21:06 static/image/common/back.gif
;----------------------------------------------
;法一
(setq str "F:\\1-进行中的项目\\20-房地产开发 ...
非常感谢你的帮助 (defun strsplit (string delimited / pos lst)
(while (setq pos (vl-string-search delimited string)) ;当pos存在时执行如下循环
(setq lst (cons (substr string 1 pos) lst)
string (substr string (+ pos 1 (strlen delimited)))
)
)
(reverse (cons string lst))
)
能告诉我这段代码是什么意思么没太读懂 本帖最后由 namezg 于 2014-11-3 23:51 编辑
命令: (strsplit "123;456;789;" ";")
("123" "456" "789" "")
命令: (strsplit "123;456;789;010" ";")
("123" "456" "789" "010")
命令: (strsplit ";123;456;789;010" ";")
("" "123" "456" "789" "010")
命令: (strsplit ";123;456;789;010;" ";")
("" "123" "456" "789" "010" "")
页:
[1]