Foxtable(狐表)用户栏目专家坐堂 → [求助]拆分字符串


  共有2366人关注过本帖树形打印复制链接

主题:[求助]拆分字符串

帅哥哟,离线,有人找我吗?
zcgmxf
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:14438 威望:0 精华:0 注册:2014/6/6 8:42:00
[求助]拆分字符串  发帖心情 Post By:2015/9/25 16:41:00 [只看该作者]

老师好!有这样一组字符串:【甲亢】(1)坚持治疗,注意在医生指导下的药物治疗或减量。(2)合理安排工作与休息,定期复查。(3)内科治疗;【糖尿病】(1)饮食疗法:按糖尿病饮食进餐,原则是:高纤维素、高蛋白、低脂肪、忌糖。(2)皮肤护理,尿糖测定。口服降糖药物或胰岛素治疗。(3)内科治疗;【消化性溃疡】(1)内科治疗。按时服药,用足疗程。(2)劳逸结合,定时进食。
    通过代码
Dim tm As String  = ProjectPath & "Attachments\导检单.doc" '指定模板文件
Dim fl As String = ProjectPath & "Reports\导检单.doc" '指定目标文件
Dim wrt As New WordReport(Tables("表A"),tm,fl) '定义一个WordReport
Dim r As Row = Tables("表A").current
Dim str() As String = r("内科_诊断建议").Split(";")
Dim temp As String = ""
For Each s As String In str
    If temp > "" Then
       temp = temp & vbcrlf & s
    Else
       temp = s
    End If
Next
wrt.ReplaceOne("[内科_诊断建议]",temp)
wrt.Build()
wrt.show()
拆分成:

【甲亢】(1)坚持治疗,注意在医生指导下的药物治疗或减量。(2)合理安排工作与休息,定期复查。(3)内科治疗

【糖尿病】(1)饮食疗法:按糖尿病饮食进餐,原则是:高纤维素、高蛋白、低脂肪、忌糖。(2)皮肤护理,尿糖测定。口服降糖药物或胰岛素治疗。(3)内科治疗

【消化性溃疡】(1)内科治疗。按时服药,用足疗程。(2)劳逸结合,定时进食。



现在我想继续拆分成下面的版式,该怎么做?请指点,谢谢!

【甲亢】

1)坚持治疗,注意在医生指导下的药物治疗或减量。

2)合理安排工作与休息,定期复查。

3)内科治疗

【糖尿病】

1)饮食疗法:按糖尿病饮食进餐,原则是:高纤维素、高蛋白、低脂肪、忌糖。

2)皮肤护理,尿糖测定。口服降糖药物或胰岛素治疗。

3)内科治疗

【消化性溃疡】

1)内科治疗。按时服药,用足疗程。

2)劳逸结合,定时进食。


[此贴子已经被作者于2015/9/25 16:42:31编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
zcgmxf
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:14438 威望:0 精华:0 注册:2014/6/6 8:42:00
  发帖心情 Post By:2015/9/25 16:46:00 [只看该作者]

请求各位老师各位大师们指点啊,有点急哦图片点击可在新窗口打开查看 谢谢了

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/9/25 16:55:00 [只看该作者]

'''...
Dim tm As String  = ProjectPath & "Attachments\导检单.doc" '指定模板文件
Dim fl As String = ProjectPath & "Reports\导检单.doc" '指定目标文件
Dim wrt As New WordReport(Tables("表A"),tm,fl) '定义一个WordReport
Dim r As Row = Tables("表A").current
Dim str() As String = r("内科_诊断建议").Split(";")
Dim temp As String = ""
For Each s As String In str
    dim idx as integer = 0
    for each ss as string in s.Split("(")
        if idx = 0 then
            if temp > "" then
                temp = temp & vbcrlf & ss
            else
                temp = ss
            end if
        else
            temp = temp & vbcrlf & "(" & ss
        end if
        idx += 1
    next
Next
wrt.ReplaceOne("[内科_诊断建议]",temp)
wrt.Build()
wrt.show()

 回到顶部
帅哥哟,离线,有人找我吗?
zcgmxf
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:14438 威望:0 精华:0 注册:2014/6/6 8:42:00
  发帖心情 Post By:2015/9/25 17:03:00 [只看该作者]

红袍老师,好像没用进行第二次拆分呢。辛苦您再看看

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/9/25 17:04:00 [只看该作者]

注意第一行字符,以及(字符,要是中文状态下的

 

http://www.foxtable.com/help/topics/1273.htm

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
zcgmxf
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1634 积分:14438 威望:0 精华:0 注册:2014/6/6 8:42:00
  发帖心情 Post By:2015/9/25 17:07:00 [只看该作者]

好的。谢谢!

 回到顶部