找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2231|回复: 6

[字符串] (XD::String:SingleChr)拆分String为单个字符

[复制链接]

已领礼包: 593个

财富等级: 财运亨通

发表于 2013-12-8 08:38:44 | 显示全部楼层 |阅读模式
函数发布
函数名称: XD::String:SingleChr
调用格式: (XD::String:SingleChr string)
参数说明: string -- 字串
返回值:
函数简介: 拆分字串,支持下划线、上下标等控制符
函数来源: 原创
函数作者:
适用版本: 不限 
最后更新时间: 2013-12-08
备注: 第二版
演示图片: -

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
  1. (defun XD::String:SingleChr (str / strl nstrl kl zkl n)
  2.   (setq        strl (vl-string->list str)
  3.         kl   '(37 67 68 79 80 85 99 100 111 112 117)
  4.         zkl  '("%" "C" "D" "O" "P" "U" "C" "D" "O" "P" "U")
  5.   )
  6.   (while strl
  7.     (cond
  8.       ((> (car strl) 127)
  9.        (setq nstrl (cons (vl-list->string (list (car strl) (cadr strl)))
  10.                          nstrl
  11.                    )
  12.              strl  (cddr strl)
  13.        )
  14.       )
  15.       ((and (= (car strl) (cadr strl) 37)
  16.             (setq n (vl-position (caddr strl) kl))
  17.        )
  18.        (setq nstrl (cons (strcat "%%" (nth n zkl)) nstrl)
  19.              strl  (cdddr strl)
  20.        )
  21.       )
  22.       (t
  23.        (setq nstrl (cons (chr (car strl)) nstrl)
  24.              strl  (cdr strl)
  25.        )
  26.       )
  27.     )
  28.   )
  29.   (reverse nstrl)
  30. )

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-12-8 14:19:59 | 显示全部楼层
1 拆出来的单个字符都跟随了控制符
2 上划线漏掉了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

 楼主| 发表于 2013-12-8 15:00:57 | 显示全部楼层
更新下, 不过单独取出来可能丢掉控制符
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6468个

财富等级: 富甲天下

发表于 2013-12-11 22:39:17 | 显示全部楼层
这个函数用处很大。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 202个

财富等级: 日进斗金

发表于 2021-5-5 10:35:24 | 显示全部楼层
这个函数有点麻烦吧
这样可以吗:
(xdrx-string-regexps "[\\u4E00-\\u9FA5]|[^\\u4E00-\\u9FA5 ]|[\\s]" "山东A-Bcs  dd" "")
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 202个

财富等级: 日进斗金

发表于 2021-5-6 16:36:11 | 显示全部楼层
(xdrx-string-regexps "." str),其中:str----字符串。这样就拆分成单个字符了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 15个

财富等级: 恭喜发财

发表于 2021-5-30 18:22:58 | 显示全部楼层
学习,学习
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-22 01:49 , Processed in 0.179822 second(s), 43 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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