汉字中的空格判断解决方法
汉字中的空格判断
各位老师,怎样判断汉字中如姓名有没有空格呢?
------解决思路----------------------
各位老师,怎样判断汉字中如姓名有没有空格呢?
------解决思路----------------------
* 示例
Create Cursor T (Xm C(10),正确结果 C(10),错误原因 C(20))
Insert Into T (Xm) Values ("吕 布")
Insert Into T (Xm) Values ("张 飞")
Insert Into T (Xm) Values ("关 云 长")
Insert Into T (Xm) Values ("刘 备")
Insert Into T (Xm) Values ("诸 葛 亮")
Insert Into T (Xm) Values ("赵云")
* 只考虑姓名间的空格,不考虑姓名尾部的空格,空格分全角(41377)和半角(32),鉴于楼主是初学者,代码如下(Vfp6代码)
Local lcStr
lcStr=""
Scan
Do Case
Case Chr(41377)$Alltrim(Xm) And Chr(32)$Alltrim(Xm)
lcStr="全角+半角空格"
Case Chr(32)$Alltrim(Xm)
lcStr="半角空格"
Case Chr(41377)$Alltrim(Xm)
lcStr="全角空格"
Otherwise
lcStr=""
EndCase
Replace 正确结果 With Strtran(Strtran(Alltrim(Xm),Chr(32),""),Chr(41377),""),错误原因 With lcStr
Endscan
* 有一定基础的狐友,可以将上面的代码精简为如下代码(Vfp9代码)
Replace All 正确结果 With Strtran(Strtran(Alltrim(Xm),Chr(32),""),Chr(41377),""),;
错误原因 With Icase(Chr(41377)$Alltrim(Xm) And Chr(32)$Alltrim(Xm),;
"全角+半角空格",Chr(32)$Alltrim(Xm),"半角空格",Chr(41377)$Alltrim(Xm),"全角空格","")
Browse