[原创]分解字符串为单个字符表的子程序
<p>(defun qzs(txt / a txt1 )<br/> (setq a 1) <br/> (setq hsc '()) <br/> (setq txt1 (substr txt a 1)) <br/> (while (not (eq txt1 "")) <br/> (if (> (ascii txt1) 160) ;;判断文字串中是否有汉字<br/> (progn<br/> (setq wz (substr txt a 2))<br/> (setq a(+ a 1))<br/> )<br/> (setq wz (substr txt a 1))<br/> )<br/> (setq hsc(append (list wz) hsc))<br/> (setq a (1+ a))<br/> (setq txt1 (substr txt a 1)) <br/> )<br/> (setq hsc (reverse hsc))<br/> )</p><p>测试 (setq x "中国人民银行123vd/>")</p><p>(qzs x)</p><p>("中" "国" "人" "民" "银" "行" "1" "2" "3" "v" "d" "/" ">")</p> <p>%%P</p><p></p><p>???</p> %%P很少碰到所以没做,((= (ascii stxt) 37) 文字是: %加上就行啦 <p>不错,支持一下!</p> <p>这个程序如何通过的呢,我试验好像出不来结果呀。</p> <p>可以呀</p><p>(defun qzs(txt / a txt1 hsc)<br/> (setq a 1) <br/> (setq hsc '()) <br/> (setq txt1 (substr txt a 1)) <br/> (while (not (eq txt1 "")) <br/> (if (> (ascii txt1) 128) ;;判断文字串中是否有汉字<br/> (setq wz (substr txt a 2)a(1+ a))<br/> (setq wz (substr txt a 1))<br/> )<br/> (setq hsc(cons wz hsc)<br/> a(1+ a)<br/> txt1 (substr txt a 1)<br/> )<br/> )<br/> (setq hsc (reverse hsc))<br/> )</p><p>测试 (qzs "中国人民银行123vd/%%P>")</p><p>("中" "国" "人" "民" "银" "行" "1" "2" "3" "v" "d" "/" "%" "%" "P" ">")</p> 在我电脑上(not (eq txt1 ""))是通不过的,汉字时为nil 不错的源码,顶起.
页:
[1]