明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 755|回复: 4

[提问] 帮忙修正一下

[复制链接]
发表于 2024-10-17 16:38:17 | 显示全部楼层 |阅读模式
本帖最后由 惜惜2 于 2024-10-17 16:42 编辑
  1.           (setq E1 "2024-10-17")
  2.           (setq E3 E1)
  3.           (if E3
  4.             (progn
  5.               (setq E3E "\\d{4}-\\d{2}-\\d{2}")
  6.               (setq E4E "\\d{4}/\\d{2}/\\d{2}")
  7.               (if (or (not (wcmatch E3 E3E))
  8.                       (not (wcmatch E3 E4E)))
  9.                 (setq E4 (strcat (substr E3 2 4)
  10.                                  "-"
  11.                                  (substr E3 6 2)
  12.                                  "-"
  13.                                  (substr E3 8 2)))
  14.                 (setq E4 nil)))
  15.           )
正常E4返回的值应该是空才对,前面判定结果应该是相等才对,但是实际运行了后面取值的代码,需求是不等才会运行取值的代码,是不是正则表达式那里有问题?
发表于 2024-10-17 18:12:37 | 显示全部楼层
wcmatch 可以用正则吗?好像是用通配符
发表于 2024-10-17 19:53:42 | 显示全部楼层
本帖最后由 统一网名 于 2024-10-17 20:50 编辑

  • (defun c:t6 (/ current-date format1 format2)
  •   ;; 获取当前日期
  •   (setq current-date "2024-10-17")
  •   ;; 定义两种可能的日期格式
  •   (setq format1 "????-??-??" )
  •   (setq format2 "????/??/??" )
  •   ;; 判断当前日期是否符合其中一种格式
  •   (if (or (wcmatch current-date format1)(wcmatch current-date format2))
  •     (princ "ok")
  •     (princ "no")
  •   )
  • )
看一下是否有帮助
 楼主| 发表于 2024-10-19 17:26:49 | 显示全部楼层
13605 发表于 2024-10-17 18:12
wcmatch 可以用正则吗?好像是用通配符

通配符可以  感谢
 楼主| 发表于 2024-10-19 17:28:03 | 显示全部楼层
统一网名 发表于 2024-10-17 19:53
  • (defun c:t6 (/ current-date format1 format2)
  •   ;; 获取当前日期
  •   (setq current-date "20 ...

  • 可以了,感谢,和楼上一样通配符的方法  
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
    ©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

    GMT+8, 2025-2-22 05:39 , Processed in 0.166580 second(s), 24 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表