读取文本内容问题
有一文本文件(无中文),格式不规则,比如这一段:
From: decay@cbnewsj.cb.att.com (dean.kaflowitz)//回车
Subject: Re: about answers//回车
Organization: AT&T//回车
Distribution: na//回车
Lines: 18//回车
In article
以上文本我要实现按一个个单词显示在控制台,但是我现在显示出的是这样的:
From
//这里空了一行,我不需要空一行
decay
cbnewsj
cb
att
com
//这里又空了一行
dean
kaflowitz
Subject
//空行
Re
//空行
about
answersOrganization //这里两个单词连起来了,下面就不说了,特征都出现了。碰到连续两个标点字符会自动换行,碰到回车会和下面单词合并。顺便说一下,我是用split来分隔单词的,请高手指教
问题点数:20、回复次数:9Top
1 楼HeddaZ(大飞飞)回复于 2006-12-01 08:27:28 得分 0
用javascript正则表达式,很简单哟
Top
2 楼johnny1983()回复于 2006-12-01 08:38:16 得分 0
拜托举个例子Top
3 楼pumaadamsjack()回复于 2006-12-01 09:09:35 得分 0
那个不是空行吧,应该使一个空格字符,你split话吧那个字符串数组其中的 : 换成:+空格应该就可以了啊Top
4 楼johnny1983()回复于 2006-12-01 09:16:25 得分 0
char[] delimiterChars ={ ' ', ':', '@', '<', '>', '.', '\t','\r','\n','(',')','?'};
不可以冒号加空格的啦,字符型数组阿
wordArr=content.split(delimiterChars );Top
5 楼johnny1983()回复于 2006-12-01 09:40:22 得分 0
换句话说,如果一个字符串连着出现split字符好像就有问题。比如:a,,b或者a, bTop
6 楼tuyile006(小y)回复于 2006-12-01 09:50:02 得分 0
不是空行 是空格
应该用划分
char[] charSplit={ ' ', ':', '@', '.', '\t','\r','\n','(',')','&'};
string[] words=content.split(charSplit);Top
7 楼chrisky2006()回复于 2006-12-01 09:53:48 得分 0
char[] words = content.ToCharArray(0,str.Length-1);
string[] sWords = new string[30];//长度可以处理
Boolean flag = true;
int k = 0;
for (int i = 0; i < str.Length-1; i++)
{
if (('a' <= words[i]) && (words[i] <= 'z'))
{
sWords[k] = sWords[k] + words[i].ToString();
flag = true;
}
else if (flag == true)
{
k++;
flag = false;
}
}
for(int j = 0;j<k;j++)
{
MessageBox.Show(sWords[j]);
}
Top
8 楼johnny1983()回复于 2006-12-01 10:13:13 得分 0
tuyile006(小y)你的做法和我的没有区别
chrisky2006() 我需要用split方法Top
9 楼johnny1983()回复于 2006-12-01 11:06:57 得分 0
顶Top




