本帖最后由 gaics 于 2021-8-15 14:14 编辑
 - (defun ExtractNumbers (str / lst num i)
- (setq lst (vl-string->list str))
- (setq i 0)
- (setq num "")
- (repeat (length lst)
- (if (or (= (nth i lst) 46)
- (and (> (nth i lst) 47)
- (< (nth i lst) 58)
- )
- )
- (setq num (strcat num (chr(nth i lst))))
- )
- (setq i (1+ i))
- )
- (if (= (strlen num) 0)
- (princ "未找到数字!")
- (atof num)
- )
- )
适合从字符串中提取出一组数字(含小数点),如“<正交 开> 80.0 <正交 关>”返回值是80.0。
如果是存在多组数值的情况,提取的结果可能无意义。
|