首页 新闻 赞助 找找看

VB 字符串如何换行

0
悬赏园豆:50 [已解决问题] 解决于 2016-03-26 16:57

我现在获取到 一串字符串 ,现在要做的是定义一个方法,实现的功能是,如果这个字符串中包含分号和句号,那么就自动换行,也就是将字符串拆分出来,但是还是一个字符串,另外 我这个是做报表用的,希望有会的人能够帮帮我。
举个例子 “1:abcd;2:adfg;3:asdvc。”
实现方法后
“1:abcd;
2:adfg;
3:asdvc。”

vb
风格不同的主页 风格不同 | 初学一级 | 园豆:14
提问于:2015-10-21 10:59
< >
分享
最佳答案
0

直接replace(";", ";" + Environment.NewLine)

收获园豆:20
幻天芒 | 高人七级 |园豆:37175 | 2015-10-21 13:43

在报表 里面可以这样直接写吗? 会不会不支持Environment.NewLine

风格不同 | 园豆:14 (初学一级) | 2015-10-21 15:25

@风格不同: 这个我就不太清楚了。。你可以查下报表里面的换行符。

幻天芒 | 园豆:37175 (高人七级) | 2015-10-21 16:17

@幻天芒: 报表里面 并没有换行符=  -= 

风格不同 | 园豆:14 (初学一级) | 2015-10-21 16:37

@风格不同: 不应该吧,你是用的什么报表?

幻天芒 | 园豆:37175 (高人七级) | 2015-10-21 17:24

@幻天芒: VS2005 里面的报表

风格不同 | 园豆:14 (初学一级) | 2015-10-22 08:20

@风格不同: 

把\n替换成换行符号
Replace(字段,'\n',chr(13)) 

幻天芒 | 园豆:37175 (高人七级) | 2015-10-22 09:26
其他回答(2)
0

换行也是字符

你查一下 System.Environment.NewLine看看

类似这样

var myString="1:abcd;" & system.environement.newline & "2:adfg;" & system.environment.newline & "3:asdvc。"

至于怎么判断分号和句号,我假设你懂的。

收获园豆:20
爱编程的大叔 | 园豆:30839 (高人七级) | 2015-10-21 11:22

=-=,你这样是已经知道了 这个字符串了。但是其实应该是不知道这个字符串有多长 有多少分号引号的,所以所我需要的是一个通用的方法,而不是只是使用特定情况的代码。。

支持(0) 反对(0) 风格不同 | 园豆:14 (初学一级) | 2015-10-21 11:28

@风格不同: 

提问方式方法有待改善。

1、报表换行不是这么做的。你一开始就走了歪路。

2、字符替换不懂和换行符不知道是两件事,别人从你的问题中看不出来。

3、有多少个分号引号这事就是我说的假设你懂的,也简单,正则表达式或者写个递归函数就能搞定了。

 

说回报表,用换行替换分号并不是好的解决方案,通常报表的栏宽度是固定的,如果字符串宽度超出,

打印是不会显示出来的,所以通常是采用自动换行。(大部分的报表组件提供此功能)

支持(0) 反对(0) 爱编程的大叔 | 园豆:30839 (高人七级) | 2015-10-23 09:50

@爱编程的大叔: 这样的报表 没有换行组件啊

支持(0) 反对(0) 风格不同 | 园豆:14 (初学一级) | 2015-10-23 12:38

@风格不同: 属性里面慢慢找。面包会有的。

支持(0) 反对(0) 爱编程的大叔 | 园豆:30839 (高人七级) | 2015-10-23 13:06
0

方法1:vbcrlf

方法2:chr(13) + chr(10)

方法3:Environment.NewLine  //仅限vb.net

收获园豆:10
空明流光 | 园豆:106 (初学一级) | 2015-10-21 13:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册