[求助]判断字符串第一个字符为中英文的问题。
<P>有如下两字符串,第一个字符串的第一个字符为中文“明”,第二个字符串的第一个字符为英文“A”,在lisp中如何判断字符串第一个字符是英文还是中文:</P><P>"明经ABC"</P>
<P>"ABC"</P> (ascii 字符串变量名)>128的是中文字符串,否则是英文字符。 谢谢!<BR>还有一个问题,因程序中的字符串由用户输入而具有特殊性,即字符串中的第一个字有可能是中文,也有可能是西文;因中文占两个字节,西文占一个字节,因此使用ascii函数取字符串变量名时,又如何能保证字符串变量名何时取一个字节,何时又取二个字节? <P>(setq i 1)</P>
<P>(if (> (ascii (substr "明经ABC" i 1)) 128)<BR> (setq i (+ i 2))<BR> (setq i (+ i 1))<BR>)</P>
<P>如果 > 128 那就表示为中文,(+ i 2) 取间隔一个位置</P>
<P>否则表示英文,(+ i 1) 取下一个位置</P> 多谢! HuaiYu 发表于 2005-8-11 08:29
(setq i 1)
(if (> (ascii (substr "明经ABC" i 1)) 128) (setq i (+ i 2)) (setq i (+ i 1) ...
谢谢!明白了!
页:
[1]