C# 怎么在文本文件中读取指定的多个相同字符?

我将一个文本文件读取到内存用(string类型),但是我要获取里面指定的多个相同字符该怎么获取,比如string s="sfd<%vfd%>fdsafd<%fdsfa%>fdfd<%fdsf%>fdfas";我现在是想获取所有<%.....%>这个标记里面的字符。如果用int start = s.indexof("<%");int end = s.indexof("%>");response.write(str.Substring(i + 2, j - i - 2));方法,只能获取第一个标记的内容。怎么办能???

第1个回答  2013-09-20
using System;using System.Collections.Generic;using System.Text;using System.Text.RegularExpressions;namespace ConsoleApplication3{ class Program { static void Main(string[] args) {
string[] rvArr = GetSTr("sfd<%vfd%>fdsafd<%fdsfa%>fdfd<%fdsf%>fdfas"); for (int i = rvArr.Length - 1; i > -1; i--) { Console.WriteLine(rvArr[i]); } }
static string[] GetSTr(string strBefore) { System.Text.RegularExpressions.Regex reg=new Regex(@"(?<=\<%)[^<%>]*(?=%\>)"); MatchCollection marr = reg.Matches(strBefore); string[] arr=new string[marr.Count]; for (int i = 0; i < marr.Count; i++) { arr[i] = marr[i].Value; } return arr; } }}

用正则表达式吧
第2个回答  2013-09-20
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+2);
}
}本回答被网友采纳

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+...

C# 获得字符串中多个相同字符某个字符的位置??如何?急急急!!!
string wordFilePath1 = wordFilePath1.Substring(0, b); \/\/截取最后一个‘\\’前的字符串,得到“D:\\wwwroot\\ReadWordToXml\\ReadWordToXml\\bin”wordFilePath1 .LastIndexOf(@"\\"); \/\/获取wordFilePath1 的最后一个‘\\’的位置,也就是你要的第二个‘\\’的位置,是38对吧,哈哈 ...

C#检索字符串有多个相同字符
比较高效率的方法是这样,先计算一下这个字符串的长度,然后将里面的b全部用空字符""替代,替代之后再求一次字符串长度,两次长度做差,就得到了b的个数

c#中如何用list对文本文件中的词语按行去重并统计每个词语的次数
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;namespace ConsoleApplication1{ class Program { static void Main(string[] args) { \/\/从文本文件中读出所有行 string[] lines = File.ReadAllLines("文本1.txt"); \/\/构造...

C# 文本文件中查找关键字并修改
回答:把文件中的数据读入一个list<string>的集合。遍历集合 取string.spit('=')[0]==set B 的时候 当前的string = "set B="+textBox.Text; 这代码都差不多给你写完了。。。关键的都出来了。你循环不会写? 保存到文件当中再把list循环一边写入文件就行了。。代码全帮你写好?

C#读取txt文件 从指定位置开始读取指定长度的字符 并赋值给一个字符串...
流程应该是:先打开文件,然后 Seek到指定位置,然后读出指定位置的数据 如果还想快一点,考虑用内存映射的方式(猜,没试过)至于前面提到的 ReadAllText ,是将数据全部读入内存,在处理,基本不符合你的要求

如何在C#中使用FileStream操作文本文件并读取内容?
在C#中,我们使用Filestream来操作文件。首先,我们定义一个名为Test的类,它包含一个Main方法,用于执行文件操作。在Main方法中,我们检查文件"C:\\temp\\MyTest.txt"是否存在,如果存在,就删除它。接着,我们创建一个新的FileStream对象并使用File.Create方法,以便向文件中写入文本。我们连续调用AddText...

c# 读取txt文件中特定内容后的数据
wt+ 读写打开或着建立一个文本文件;允许读写。at+ 读写打开一个文本文件,允许读或在文本末追加数据。ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。

C#在文本中查找字符串
有一个文本文件k.txt我想用C#在里面找字符串“B”,里面有三字B,当找到第一个“B”时,就弹出对话窗口。找到第二个“B”时,也... 我想用C#实现跟在文本里查找字符串差不多的功能,例如。有一个文本文件k.txt我想用C#在里面找字符串“B”,里面有三字B,当找到第一个“B”时,就弹出对话窗口。找到第二个...

C#中winform怎么截取出文本中需要的字符串
如果你这格式都是固定的,可以获取每一行的记录,然后split方法来切割 “ (双引号),分成固定数量的数组,然后你找到对应的内容的下标,比如这里 time 时间值对应的下标是 1 ,name值对应下标是5。这样就可以获取到你想要的值。ps:你这个文件都这么规范的话,为什么不保存成xml的格式,这样取方便多...

相似回答