标题:标点符号函数简化问题
只看楼主
qczx3358
Rank: 2
等 级:论坛游民
帖 子:44
专家分:15
注 册:2014-1-19
结帖率:100%
 问题点数:0 回复次数:18 
标点符号函数简化问题
把一个备注内容通过分段分成几个行,但是有时行首有中文标点符号,我想设计一个函数把行首标点添加到上一行尾
比如有行a1,行b1,行c1,行d1等等,大家有什么好的办法,说说。。
设计一函数如下:
程序代码:
*!* 校验行首是否为中文标点符号(包括","。"》"三种),如果是则把标点符号删掉在它前一行尾增加此标点符号
*!* 用法bdfh(首行变量,下一行变量,1或2),如果是1则返回首行,2则返回第二行
*!*    如bdfh(a1,b1,1)则返回a1值,bdfh(a1,b1,2)则返回b1值
FUNCTION bdfh
PARAMETERS sbdfhtmp,wbdfhtmp,bdfhtmp
    IF ASC(SUBSTRC(wbdfhtmp,1,1))=41900&&,
    sbdfhtmp=sbdfhtmp+CHR(41900)
    wbdfhtmp=SUBSTRC(wbdfhtmp,2)
    ENDIF
    IF ASC(SUBSTRC(wbdfhtmp,1,1))=41399&&》
    sbdfhtmp=sbdfhtmp+CHR(41399)
    wbdfhtmp=SUBSTRC(wbdfhtmp,2)
    ENDIF
    IF ASC(SUBSTRC(wbdfhtmp,1,1))=41379&&。
    sbdfhtmp=sbdfhtmp+CHR(41379)
    wbdfhtmp=SUBSTRC(wbdfhtmp,2)
    ENDIF
    IF ASC(SUBSTRC(wbdfhtmp,1,1))=41378&&、
    sbdfhtmp=sbdfhtmp+CHR(41378)
    wbdfhtmp=SUBSTRC(wbdfhtmp,2)
    ENDIF
    IF ASC(SUBSTRC(wbdfhtmp,1,1))=41919&&?
    sbdfhtmp=sbdfhtmp+CHR(41919)
    wbdfhtmp=SUBSTRC(wbdfhtmp,2)
    ENDIF
    IF ASC(SUBSTRC(wbdfhtmp,1,1))=41889&&!
    sbdfhtmp=sbdfhtmp+CHR(41889)
    wbdfhtmp=SUBSTRC(wbdfhtmp,2)
    ENDIF
    IF ASC(SUBSTRC(wbdfhtmp,1,1))=41915&&;
    sbdfhtmp=sbdfhtmp+CHR(41915)
    wbdfhtmp=SUBSTRC(wbdfhtmp,2)
    ENDIF
    IF ASC(SUBSTRC(wbdfhtmp,1,1))=41914&&:
    sbdfhtmp=sbdfhtmp+CHR(41914)
    wbdfhtmp=SUBSTRC(wbdfhtmp,2)
    ENDIF
    RETURN IIF(bdfhtmp=1,sbdfhtmp,wbdfhtmp)
ENDFUNC


程序代码:
a1=bdfh(a1,b1,1)&&第一行和第二行检测
b1=bdfh(a1,b1,2)&&第一行和第二行检测
b1=bdfh(b1,c1,1)&&第二行和第三行检测
c1=bdfh(b1,c1,2)&&第二行和第三行检测
c1=bdfh(c1,d1,1)&&第三行和第四行检测
d1=bdfh(c1,d1,2)&&第三行和第四行检测
搜索更多相关主题的帖子: color 标点符号 中文 
2014-02-28 20:13
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
发贴没分,没动力。
可以用VFP自带的一个控件,类似于WORD功能(具体名称忘了)。至于标点显示在备注字段中的行首或行尾,都无所谓。

[ 本帖最后由 sdta 于 2014-2-28 20:51 编辑 ]

坚守VFP最后的阵地
2014-02-28 20:16
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
还有西文标点呢

DO IT YOURSELF !
2014-02-28 20:22
qczx3358
Rank: 2
等 级:论坛游民
帖 子:44
专家分:15
注 册:2014-1-19
得分:0 
没人理呀,大家讨论一下哈哈。
2014-03-01 10:30
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
得分:0 
以下是引用qczx3358在2014-3-1 10:30:27的发言:

没人理呀,大家讨论一下哈哈。
不会噻
2014-03-01 11:45
qczx3358
Rank: 2
等 级:论坛游民
帖 子:44
专家分:15
注 册:2014-1-19
得分:0 
继续顶一下,有人讨论不?
2014-03-02 10:56
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
备注字段中内容的标点符号,在行首与行尾有什么关系。楼主是没事找事。

坚守VFP最后的阵地
2014-03-02 11:11
qczx3358
Rank: 2
等 级:论坛游民
帖 子:44
专家分:15
注 册:2014-1-19
得分:0 
真晕,提个问题有什么呀。
2014-03-02 12:23
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
回复 8楼 qczx3358
我的意思表达的很明白了。楼主费这么大劲,认为有必要吗。备注字段的内容,存在于数据表字段中,非程序人员是看不见的。标点符号在行首或行尾,都是无关紧要的,不要浪费自己的精力与他人的精力吧。所以说:楼主是无事找事。但楼主的这种认真钻研的精神还是值得大家学习的。

[ 本帖最后由 sdta 于 2014-3-2 14:02 编辑 ]

坚守VFP最后的阵地
2014-03-02 14:00
qczx3358
Rank: 2
等 级:论坛游民
帖 子:44
专家分:15
注 册:2014-1-19
得分:0 
如果把备注字段打印出来,一整段,直接打印备注字段,有的时候行间距不好控制,那么把备注字段分成不同的行,把每行要打印内容重新存储为字符型字段,然后字符型字段放入报表中,行间距就可以按需要调整了。
但是分行的时候,如果行首是标点符号就不美观了。
这是我要表达的意思。

[ 本帖最后由 qczx3358 于 2014-3-2 14:49 编辑 ]
2014-03-02 14:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-427821-1-1.html




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

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