| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1744 人关注过本帖
标题:求:如何判断中、英文标点符号?
只看楼主 加入收藏
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
如果是标准字库编码,字或符是有区位定义。
2022-12-17 23:02
cssnet
Rank: 5Rank: 5
等 级:职业侠客
威 望:5
帖 子:351
专家分:335
注 册:2013-10-4
收藏
得分:0 
以下是引用吹水佬在2022-12-17 23:02:16的发言:
如果是标准字库编码,字或符是有区位定义。


确实是搞复杂了,呵呵,用区位比较简单。
另,#3的代码,英文符号也有漏洞,“\”(0h5C)这个符号,居然成功混过了这一句代码:
*设c1 = "\"
c2 = Strconv(c1, 1)
? c2 == c1
2022-12-18 09:23
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
标准字库本身就有规范,直接查表就可以。
简单写个GB2312-80标准的
图片附件: 游客没有浏览图片的权限,请 登录注册

程序代码:
hzs = "汉#字¥啊%挨&鼾、尊。昨℃匾$鼽│左┃卦┄阿┅鼹"
FOR i=1 TO LENC(hzs)
    hz = SUBSTRC(hzs,i,1)
    ? " ", hz, hzqm(hz)
ENDFOR
RETURN

FUNCTION hzqm(hz)
    LOCAL qm
    qm = BITRSHIFT(ASC(hz)-0xA0A0,8) 
    RETURN ICASE(BETWEEN(qm, 1, 9),"符号",;
                 BETWEEN(qm,16,55),"一级汉字",;
                 BETWEEN(qm,56,87),"二级汉字",;
                 "非标码")
    
ENDFUNC
2022-12-18 09:29
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 13楼 吹水佬
妙招,高人啊

坚守VFP最后的阵地
2022-12-18 10:04
cssnet
Rank: 5Rank: 5
等 级:职业侠客
威 望:5
帖 子:351
专家分:335
注 册:2013-10-4
收藏
得分:0 
弊就弊在,时光匆匆流转到了2022年,作为一群真的猛士,我们每天需直接面对、需直接处理的字符串,绝大多数是UTF-8、Unicode LE、Unicode BE啊,亲!
光用硬编码对付GB2312-80、GBK,那可不成啊,亲!
还必须做到能够妥善处理Strconv(x, 6)='??'的那一堆千奇百怪的偏僻字符啊,亲!


以下是引用吹水佬在2022-12-18 09:29:58的发言:

标准字库本身就有规范,直接查表就可以。
简单写个GB2312-80标准的


2022-12-18 10:29
cssnet
Rank: 5Rank: 5
等 级:职业侠客
威 望:5
帖 子:351
专家分:335
注 册:2013-10-4
收藏
得分:0 
考虑到,今时今日,在这个星球上,几乎一切网页、一切文档,字符串皆采用UTF-8编码,这已经是事实上的“行业标准”了!——无论VFPer喜欢也罢,诅咒也罢,无奈也罢,接受也罢,敌视也罢——故而,字符串相关处理函数的编程开发,若能够直接针对UTF-8编码进行处理,我相信,那必然会是性价比最高的代码开发了。

你说呢,亲?
2022-12-18 10:53
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
字符编码都可以互转的
VFP的Strconv()也绝对没问题
问题是VFP自身输出的兼容问题,看到的不等于实际的,??也就是编码不在兼容之内,有人叫他“乱码”。
要用UTF-8,VFP也可以找个支持兼容编码控件来处理,这不是什么大的问题。
2022-12-18 11:53
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
以下是引用cssnet在2022-12-18 10:53:41的发言:

考虑到,今时今日,在这个星球上,几乎一切网页、一切文档,字符串皆采用UTF-8编码,这已经是事实上的“行业标准”了!——无论VFPer喜欢也罢,诅咒也罢,无奈也罢,接受也罢,敌视也罢——故而,字符串相关处理函数的编程开发,若能够直接针对UTF-8编码进行处理,我相信,那必然会是性价比最高的代码开发了。

你说呢,亲?

VFP作为桌面数据库应用涉及UTF-8的不多,但作为windows平台的应用,应该也能利用windows的功能应付UTF-8的应用吧。
试了一下,VFP也可以直接编辑web页面的。
图片附件: 游客没有浏览图片的权限,请 登录注册
2022-12-19 17:45
快速回复:求:如何判断中、英文标点符号?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027531 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved