• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

还要麻烦思归老哥一下或者其他人了。处理一串字符串的问题了

stlwj 2004-10-28 11:04:44
有字符串如下.
val1 val2 val3 val4
val1 val 2 val3 val4
(在val2与val3之间是两个空格。其它是一个空格.)
想把该字符串处理成
val1,val2,val3,val4
val1,val 2,val3,val4
请问如果用正则表达式来做的,要怎么办。
再这里再次感谢思归帮我解决了昨天的问题。。。
...全文
189 点赞 收藏 20
写回复
20 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
stlwj 2004-10-29
比较难以说清楚,谢谢思归的,不要再麻烦您了,我自己去研究,结帖。
回复
yypeng 2004-10-29
楼上的够恶心的,哪个贴 子里都有,建议版主将它给封了!
同意的up
回复
cs920 2004-10-28
~来学习的...
回复
laodeng72586 2004-10-28
搞不懂.
你到底用的是什么规律进行处理的?
有的一个空格,有的两个空格,
真是搞不懂.....
回复
mobydick 2004-10-28
把空格替换成","不就可以了?
回复
wingnal 2004-10-28
老大说得对阿
你的那些字符有没有规律的阿?
回复
stlwj 2004-10-28
规则是各个内容是通过一个空格相隔的,但在proudtd 3和proudt abc 3之间是用两个空格相隔的,后面的数字是可变的。有可能是数字,也可能是文字。
group 1. proudtd 3 3 4
group 1. proudt abc 3 3 4


group(1个空格)1.(1个空格)proudtd(两个空格)3(1个空格)3(1个空格)4
group(1个空格)1.(1个空格)proudt abc(两个空格)3(1个空格)3(1个空格)4
回复
saucer 2004-10-28
what is the rule here? the last three are always numbers? if there is no rule, then there is no way to do it
回复
stlwj 2004-10-28
输出成这个:
group,1.,proudtd,3,3,4
group,1.,proudt abc,3,3,4
回复
saucer 2004-10-28
what will the output be?
回复
stlwj 2004-10-28
谢谢思归,但这种方法只能对
val1 val2 val3 val4
val1 val 2 val3 val4进行处理,
我的数据要比这个复杂了。具体的数据如下:
group 1. proudtd 3 3 4
group 1. proudt abc 3 3 4
如果可以的话,请帮我设计一下。我在正则表达式里找了很久,都处理不了。
回复
saucer 2004-10-28
string s = @"val1 val2 val3 val4
val1 val 2 val3 val4";


s= Regex.Replace(s,@"[ ]+(?=[a-zA-Z])",",");
Console.WriteLine(s);
回复
stlwj 2004-10-28
TO:brightheroes(闭关|那一剑的风情)
会把字符串变成
val1,val2,val3,val4
val1,val,2,val3,val4
回复
小蕊_claudia 2004-10-28
http://dev.csdn.net/Develop/article/41/41245.shtm
回复
brightheroes 2004-10-28
string s = "val1 val2 val3 val4";
s = s.Replace(" "," ");
s = s.Replace(" ",",");
回复
saucer 2004-10-28
is it always the string "proudtd"? is the number of records fixed each line?
回复
stlwj 2004-10-28
应该是比较麻烦的一件事情,总之谢谢思归的帮助。。。
回复
stlwj 2004-10-28
呵呵,可能是我的描述不清楚。其实这些数据是有规律的,就是在
group(1个空格)1.(1个空格)proudtd(两个空格)3(1个空格)3(1个空格)4
******* *
这两个数据之间是两个空格,其他的数据是之间是一个空格隔开。
而在proudtd的数据是可能有存在空格,但只当是一个数据来处理。
回复
saucer 2004-10-28
看你的要求

group(1个空格)1.(1个空格)proudtd(两个空格)3(1个空格)3(1个空格)4
^^^^^^^^^^怎么知道这里要不要换成","

group(1个空格)1.(1个空格)proudt abc(两个空格)3(1个空格)3(1个空格)4
回复
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2004-10-28 11:04
社区公告

让您成为最强悍的C#开发者