草庐IT

c# string.replace 在 foreach 循环中

不知何故,我似乎无法在C#的foreach循环中进行字符串替换。我的代码如下:foreach(stringsinnames){s.Replace("pdf","txt");}我对LINQ还是很陌生,所以如果这听起来很业余,请原谅我;) 最佳答案 您说您正在寻找LINQ解决方案...这很简单:varreplacedNames=names.Select(x=>x.Replace("pdf","txt"));我们不知道names的类型,但如果您想重新分配给它,您可以使用ToArray或ToList://IfnamesisaListname

C# 替换字符串中的字符串

是否可以在不分配返回值的情况下替换字符串中的子字符串?我有一个字符串:stringtest="Hello[REPLACE]world";我想用其他东西替换子字符串[REPLACE]:test=test.replace("[REPLACE]","test");这工作正常,但如果不将返回值分配给变量,我该怎么做呢?我想要这样的东西:test.replace("[REPLACE]","test"); 最佳答案 正如dlev所提到的,您不能使用string执行此操作,因为字符串在.NET中是不可变的-一旦构造了一个字符串,您就无能为力了(不

c# - EF5 ObjectContext : How to replace IQueryable<T>. 包含(路径)与 context.T.Attach()

我在相对较大且复杂的数据模型上使用EntityFramework5和ObjectContext。我想解决将多个IQueryable.Include(Path)链接到急切加载相关对象时生成的大查询。例如,我正在做这样的事情:varqueryPe=context.Person.Where(p=>p.Id==110).Include(@"AA");queryPe=queryPe.Include(@"BB.CC.DD");queryPe=queryPe.Include(@"EE.FF");它可以通过使用字符串数组并在运行时在foreach循环中链接每个图来使其通用。相反,我想做这样的事情:Pe

C#如何Regex.Replace "\r\n"(实际字符,不是换行符)

我正在使用几个c#正则表达式清理一些可怕的文本。一个让我难过的问题是文本中有许多'\r\n'字符串,实际字符不是换行符。我试过:content=Regex.Replace(content,"\\r\\n","");和:content=Regex.Replace(content,"\r\n","");但它们都不起作用。最后我不得不使用:content=content.Replace("\\r\\n","\r\n");为了完成项目,但无法在正则表达式中完成它让我很烦。 最佳答案 \r和\n在Regex中也有特殊含义,因此需要对反斜杠进行

c# - 替换二进制文件中的字节序列

将二进制文件中的字节序列替换为与其他字节长度相同的最佳方法是什么?二进制文件会非常大,大约50MB,不应立即加载到内存中。更新:我不知道需要替换的字节的位置,我需要先找到它们。 最佳答案 假设您正在尝试替换文件的已知部分。打开一个具有读/写权限的FileStream找对地方覆盖现有数据示例代码来了...publicstaticvoidReplaceData(stringfilename,intposition,byte[]data){using(Streamstream=File.Open(filename,FileMode.Ope

c# - 从字符串中删除\r

我在字符串中有一些Html我已尽最大努力多次删除\r但失败了。text.Replace("\r\n","").Replace("\r","").Replace("\n",""); 最佳答案 您需要将结果分配回text,例如:text=text.Replace("\r\n","").Replace("\r","").Replace("\n",""); 关于c#-从字符串中删除\r,我们在StackOverflow上找到一个类似的问题: https://stack

c# - 替换列表中的字符串值

我有一个字符串集合,其中包含诸如“goalXXvalue、goalXXLength、TestXX”之类的值。这是一个列表(字符串)我以为我可以遍历每个项目并用下面的方法替换我尝试过的XX值,但值不会改变。我哪里错了?谢谢metricList.ForEach(Function(n)n.Replace("XX","1")) 最佳答案 这里有几个问题:首先,字符串是不可变的,因此当您调用.Replace时,您会返回一个新字符串。调用n.Replace不会修改n。在匿名函数中分配给n不会影响列表中的值。尽管如此,您不能在枚举时更改集合的内容

c# - C#中替换字符串中的特殊字符

我的要求是:Ihavetoreplacesomespecialcharacterslike*'",_&#^@withstring.Empty,andIhavetoreplaceblankspaceswith-.这是我的代码:Charseparated=Charseparated.Replace("*","").Replace("'","").Replace("&","").Replace("@","")...对于这么多要替换的字符,我必须使用尽可能多的Replace,这是我想避免的。是否有另一种有效的方法来删除特殊字符,但同时用-替换空格? 最佳答案

c# - 字符串索引和替换

我今天刚遇到这个问题,想知道是否有人知道为什么这个测试可能会失败(取决于文化)。目的是检查测试文本是否包含两个相邻的空格,这是根据string.IndexOf(即使我告诉字符串替换所有出现的两个相邻的空格).经过一些测试后,似乎\xAD以某种方式导致了这个问题。publicclassReplaceIndexOfSymmetryTest{[Test]publicvoidIndexOfShouldNotFindReplacedString(){stringtestText="\x61\x20\xAD\x20\x62";conststringTWO_SPACES="";conststring

C# String.Replace 双引号和文字

我是c#的新手,所以我才在这里问这个问题。我正在使用一个返回一长串XML值的Web服务。因为这是一个字符串,所以所有属性都用双引号转义stringxmlSample=""这是我的问题。我想做一个简单的string.replace。如果我在PHP中工作,我会运行strip_slashes()。但是,我使用的是C#,而且我一辈子都弄不明白。我无法写出我的表达式来替换双引号("),因为它会终止字符串。如果我将其转义,则结果不正确。我做错了什么?stringsearch="\\\"";stringreplace="\"";Regexrgx=newRegex(search);stringstri