;;;teather:nonsmall opendcl

;;;version(版本):1.0

;;;description(描述):应用正则表达式,从字符处中查找邮箱地址

;;;;;;示例:  1.加载程序

;;;     2.cad命令行输入:(setq str "dssd f bvd1@126.com 2@qq.com sss a 21@sina.cn,www dds 111111@yeah.net")

;;;    3.cad命令行输入:(tt str)

;;;    cad命令行输出数据:

;;;           邮箱地址:bvd1@126.com

;;;           邮箱地址:2@qq.com

;;;                                邮箱地址:21@sina.cn

;;;                                邮箱地址:111111@yeah.net

;;;                       替换:dssd f 邮箱替换 邮箱替换 sss a 邮箱替换,www dds 邮箱替换

(defun tt(str/)

(vl-load-com) '加载vl

(setq reg (vlax-create-object "vbscript.regexp")) '创建正则表达式

;;; 正则表达式属性: global Multiline IgnoreCase pattern 其中pattern是灵魂-----------------

;;;  1.写正则表达式

;;;  2.百度搜索正则表达式,就可以了解pattern写法。

(vlax-put-property reg 'global -1) '是否匹配全部 (-1是 ,0 不是)

(vlax-put-property reg 'Multiline -1)'是否多行匹配 (-1是 ,0 不是)

(vlax-put-property reg 'IgnoreCase -1)'是否忽略大小写 (-1是 ,0 不是)

(vlax-put-property reg 'pattern (strcat "\\w{1,}" "@" "\\w{1,}" "." "((cn)|(com)|(net))"));lisp \\

;;;  ----------------- end 正则表达式属性

;;; 正则表达式方法: test Execute IgnoreCase pattern 其中pattern是灵魂-----------------

;;;   1.(vlax-invoke-method reg 'test str)判断字符串是否与正则表达式匹配

(if (vlax-invoke-method reg 'test str)

;;;   2.(vlax-invoke-method reg 'Execute str)生成匹配集合

(progn (setq matchcollect (vlax-invoke-method reg 'Execute str))

;;;   3.打印匹配的每个集合元素的value

(vlax-for match_item matchcollect (princ (strcat "\n"  "邮箱地址:" (eval (vlax-get-property match_item 'value)))))

)

(princ "no email")

)

;;;   4.替换匹配的值  (vlax-invoke-method reg 'Replace str "replace")  生成str副本

(princ (strcat "\n" "替换:" (vlax-invoke-method reg 'Replace str "邮箱替换")))

;;;  ----------------- end 正则表达式方法

(vlax-release-object reg);释放内存

(prin1)

)

lisp princ详解_晓东CAD家园-论坛-A/VLISP-正则表达式lisp实例讲解-通过代码,完整的展示了正则表达式在lisp中使用 - Powered by Discuz!...相关推荐

  1. LISP 圆孔标记_晓东CAD家园-论坛-A/VLISP-获取当前标注样式-;;希望大家来完善它 - Powered by Discuz!...

    (defun C:get_current_dimStyle (/ L LST Y) (setq        Lst (list "blipmode"                ...

  2. 如何用lisp画蔓叶线_晓东CAD家园-论坛-晓东工具箱、编程申请-求帮忙,编写一个,快速填充图案的 LISP程序 - Powered by Discuz!...

    这是我根据从网络上收集到的填充LISP插件,加以修改的的结果.虽然不完美,但还是能达到,60%的期望.发出来,大家帮忙修改一下. ;填充图案的 LISP插件 (defun c:HH(/ kw lay ...

  3. lisp 天正标高_天正lisp文件夹_晓东CAD家园-论坛-A/VLISP-[求助]:怎样设置这个lisp里的读取文件...

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区. 您需要 登录 才可以下载或查看,没有帐号?立即注册 x 这时一个别人很久以前的lisp文件,可能是cadR12版就有了.文件语句如下: (se ...

  4. lisp把选集转成表_晓东CAD家园-论坛-LISP/VLISP程序库-[LISP程序]:把text转为属性图块 - Powered by Discuz!...

    ;;把text转为属性图块 ;;By LUCAS (defun C:C_DEF (/ HOLDECHO HOLDBLIP HOLDREQ SS SSS N A AA A1 A73 HH LST_210 ...

  5. lisp点位提取_晓东CAD家园-论坛-A/VLISP-[LISP函数]:计算到指定点指定距离的点的点位 - Powered by Discuz!...

    ;;;================================================================= ;;;计算到指定点指定距离的点的点位 ;;;参数:lst -- ...

  6. Lisp获取偏置后对象的坐标点_晓东CAD家园-论坛-A/VLISP-[LISP程序]:求助:用lsp提取lwpline的点坐标-有现成的吗?谢谢! - Powered by Discuz!...

    这时有一段代码,可供参考(写的时间太久了) ;;==================================================================== ;; ;将选择 ...

  7. lisp画垫圈_晓东CAD家园-论坛-LISP/VLISP程序库-[LISP程序]:俺的画内六角圆柱头螺钉的LISP程序-见附件 - Powered by Discuz!...

    b_screw_column.dcl /*;这是一个基于AutoCad 14.0下画螺钉的程序 ;本程序作者b.w ;本程序无偿使用 ;如有更好建议,请联系b.w ;版本:2.0.01 ;日期:14/ ...

  8. lisp将图元追加选择_晓东CAD家园-论坛-A/VLISP-向块添加新图元,添加图元到块内 - Powered by Discuz!...

    (defun $add-ents>block$ (ents block / copy-zt dxf mat mxm mxv objs ref->def trp B-O) ;块外图元复制到块 ...

  9. lisp 多段线转面域_晓东CAD家园-论坛-晓东工具箱、编程申请-[编程申请]:批量面域转成闭合多段线!!!!-批量面域转成闭合多段线!!!! - Powered by Discuz!...

    '将多个直线连成一条轻质多段线 Public Sub joinpoly(reg As AcadRegion) reg.Explode On Error Resume Next Dim sset As ...

  10. cad线段总和lisp_晓东CAD家园-论坛-LISP/VLISP程序库-[LISP程序]:文本工具:面积文字累加求和 - Powered by Discuz!...

    [FONT=courier new] (princ "\nc:txta===面积文字累加求和---txtas设置--------lxx.2001.5") (princ " ...

最新文章

  1. php生成文字闪烁,如何用jquery实现闪烁文字效果
  2. 继承redis spring_实例讲解Springboot以Repository方式整合Redis
  3. c++画多边形_如何画出超漂亮的极光绘画教程
  4. QT 提示之右下角冒泡
  5. 「雕爷学编程」Arduino动手做(21)——激光开关模块
  6. 【java】swing编写窗体
  7. 如何在.NET中启用程序集绑定失败日志记录(Fusion)
  8. [代码]获取源页的控件值
  9. redis分布式客户端中间件
  10. MATLAB高斯迭代算法,matlab实现高斯赛德尔迭代法解方程组
  11. 到底该如何看待“东数西算”?
  12. python樱桃小丸子_appium+python自动化启动app
  13. 如何给网页添加icon图标?
  14. 【ROS入门21讲】Client客户端的编程实现
  15. react中列表渲染的局部刷新
  16. 转:杰克·韦尔奇:我的生命应该如何度过?
  17. KO88冲销内部订单结算的操作参考
  18. 中学生学习心理01认知过程
  19. Linux管理员权限的相关命令
  20. python 利用cip.cc查询IP归属地

热门文章

  1. Slat撒盐加密原理
  2. Apache CarbonData学习资料汇总
  3. 将8位的tif图片改为png图片
  4. sqLite数据库读C#
  5. 【高等数学】第 5 讲 偏导数
  6. 京东(保险)部门直推面经
  7. firefox、IE下的几个不同属性的方法调用
  8. Java 实现 图片OCR文字识别
  9. ORA-01045: user lacks CREATE SESSION privilege; logon denied
  10. html 宽度单位,长度单位有哪些?