c#编程,我有一个Text文件,想过滤其中的文件内容,得到文件中两段指定字符串中间的文本内容

比如我的文件内容为
................................AAA(要取出的内容)BBB........................AAA(要取出的内容)BBB.......
省略号代表不同长度的文本(长度不固定)
然后获得AAA与BBB之间的内容,文章中会出现多个AAA与BBB
也就是要取出多组AAA与BBB之间的内容,然而多少组又不是固定的,可能是一组也可能是20组。
请问我怎么提取出AAA与BBB之间的内容?感谢大神!

        static void Main(string[] args)
        {
            string input = @"..AAA(要取出的内容1)BBB....AAA(要取出的内容2)BBB.......";
            Regex r = new Regex(@"AAA(.+?)BBB");
            foreach (Match m in r.Matches(input))
                Console.WriteLine(m.Groups[1].Value);
            Console.ReadLine();
        }

追问

如果AAA 和BBB之间有换行就读不出来了
因为被读取的文本文件过大,大约有600K的样子,而且AAA和BBB之间的文本也很长的,能不能一点一点的读取,然后遇到AAA开始读,到BBB结束,然后再从AAA开始读到BBB结束,直到遇不到AAA跳出循环

追答

600k是小意思,用File.ReadAllText一次性读到string里都没问题。

追问

是的我读出来了,但是遇到换行或者
class="J_K123456gRate_ReviewItem kg-rate-ct-review-item"tabindex="0">
<div
比如这一段,中间没有换行的时候,要过滤取得J_K和div之间的内容就无法得到

追答

你到底还有多少变化啊,最开始的题目你只说了AAA BBB。

追问

AAA 和BBB里面的所有字符都要匹配上,包括换行和特殊字符

温馨提示:内容为网友见解,仅供参考
无其他回答

C#如何获取txt文本文档中指定的字符串并赋给数组,例如:获取文本文档...
} SR.Close(); \/\/关闭文件 如果想把文件处理完,就多读几遍,直到读不到字符串,就可以了。注意要包含 using System.IO;

c#中怎样截取两特定字符之间的字符串
IndexOf(Char) 报告指定 Unicode 字符在此字符串中的第一个匹配项的索引。string stra = "abcdefghijk";string strtempa = "c";string strtempb = "j";\/\/要求c---g之间的字符串,也就是:defghi \/\/求得strtempa 和 strtempb 出现的位置:int IndexofA = stra.IndexOf(strtempa);int Index...

用C#实现关键词过滤 思路是调用一个TXT文档 并根据已有的关键词对TXT...
如果你直接读取几百M以上的大文件,除非你的机子内存足够大) string fileString = System.IO.File.ReadAllText(filePath); \/\/以***替换指定的关键词 fileString = fileString.Replace(keyword, "***"); \/\/\/新文件是否存在,是则删除 \/\/if (System.IO.File.Exists(filePathNew)...

C# 怎么在文本文件中读取指定的多个相同字符?
string s = "sfd<%vfd%>fdsafd<%fdsfa%>fdfd<%fdsf%>fdfas";while (true){ if (s.IndexOf("<%") != -1){ int start = s.IndexOf("<%"); int end = s.IndexOf("%>"); Console.WriteLine(s.Substring(start + 2, end - start - 2)); s = s.Substring(end+...

...一个特定文本文件做比较,找出其与特定文本文件中文本的不一样地方...
简单的方法是把两个都放到一个数组里然后对比,效率较低 更好的办法是用IDictionary<,>接口。 可以实现一对一的hash查询,效率较高,具体代码我就不写了,可以百度

C#如何从文件中读取两个字符串(起始字符串和结束字符串)之间的数据到另...
计算str1,str2的各自长度,将所有内容读到缓冲区,然后将缓冲区里面str1length到缓冲区长度-str1length-str2length的内容写入另一个文件

请问,在C#中想检索一个txt文本中的关键词,并根据关键词修改文本中的关键...
先将txt文件中的内容读取出来,定义一个字符串变量接收,再将这个字符串变量按你所需的关键字拆分成字符串数组,然后按你的需要将数组中的字符串进行重组,最后写入Txt文件

C#读取txt文本文件中的数据
1、首先先来看一下准备的txt文本文件的内容。2、然后在程序中引入操作文件的命名空间System.IO。3、接下来需要定义一个变量,存储文件所在的路径。4、然后先读取文本内容,调用File类的ReadAllLines即可读取所有内容。5、接下来是写入内容,按照下图的方式,准备要写入的内容。6、准备好内容以后,调用File的...

C#读取txt文件,一行行的读取其内容,截取特定字符放数组里。
这个问题其实比较简单,如果你读取的文本文件很大的话,我建议用文件流的方式读取,如果小的话可以不用,具体实现是:path="你的文本文件的路径";\/\/定义一个全局变量的数组,用于接收一会儿切割的字符数据 string[] strResult=null;\/\/读取每一行数据,存放到数组中 string[] strTxt=File.ReadAllLines("...

C#中如何将txt文件中的内容读取到字符串数组
先要获取TXT的行数,这个你自己弄吧。下面代码是把每个字符串读入到string[] aa中;FileStream fs = new FileStream("d:\\\\1.txt", FileMode.Open);StreamReader m_streamReader = new StreamReader(fs);m_streamReader.BaseStream.Seek(0, SeekOrigin.Begin);string strLine = m_streamReader....

相似回答