Tag: 字符串

解析字符串以浮点数C#

我在字符串中有浮点数。 有一个问题。 数字使用“。” 不是“,”作为小数点。 此代码无效: MyNumber = float.Parse(“123.5”); 我知道我可以使用字符串替换function在解析之前“修复”此字符串。 MyNumber = float.Parse(“123.5”.Replace(‘.’,’,’); 但还有其他办法吗?

查找字符串中的所有数字

我的应用程序的一部分有一个区域,用户将文本输入到textBox控件中。 他们将在textBox中输入文本和数字。 当用户按下一个按钮时,textBox将其文本输出到一个字符串中,查找字符串中的所有数字,将它们乘以1.14,然后将键入的文本吐出到一个非常小的textBlock中。 基本上,我想要做的是找到字符串中的所有数字 ,将它们乘以1.14,然后将它们插回到字符串中。 起初,我认为这可能是一个简单的问题:只是Bing的标题 ,看看会出现什么。 但经过两页现在紫色的链接后,我开始认为我无法用我自己的,非常吝啬的Regex知识来解决这个问题。 但是,我确实找到了一系列有用的链接: 这篇文章来自DotNetPerls 这个代码片段在Snipplr 这个问题在MSDN上 这个答案在StackOverflow上 本文来自AssociatedContent 这个问题在MSDN上 这篇关于Java2s.com的文章 请注意:这些文章中的一些接近于做我想做的事情,通过从字符串中提取数字,但没有一个找到字符串中的所有数字 。 示例:用户在textBox中输入以下字符串:“鸡肉,冰淇淋,567,奶酪!还有,140和1337。” 然后该程序将其吐入textBlock:“鸡肉,冰淇淋,646.38,奶酪!还有159.6和1524.18。”

C#将动态字符串转换为现有类

在Windows应用程序中,使用C#,我有一个报告模块,它将依赖于类来填充报告。 但是会有很多报告,我不想为每个报告编写代码。 流程将如下:在报告编辑器中,将为报告分配一个类(即“应用程序”)作为字符串。 当用户选择要运行的报表时,代码将从SQL查询中获取数据。 代码将获取数据并找出将数据放入哪个类。 然后报告将使用该类并使用该类中的数据填充报告。 这是我的困境,我如何使代码动态化,以便代码将指定的类转换为适当的类对象? 示例: gVar = Report; (gVar.ReportClass)oClass = new gVar.ReportClass;

C# – 字符串实际上是一个字符数组还是只有一个索引器?

由于在C#中可以使用以下代码,因此我认为string是否实际上是一个chars数组: string a=”TEST”; char C=a[0]; // will be T

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

是否可以在不指定返回值的情况下替换字符串中的子字符串? 我有一个字符串: string test = “Hello [REPLACE] world”; 我想用其他东西替换子串[REPLACE] : test = test.replace(“[REPLACE]”, “test”); 这工作正常但如何在不将返回值赋给变量的情况下这样做? 我想要这样的东西: test.replace(“[REPLACE]”, “test”);

C#do字符串文字是否由编译器优化?

C#编译器或.NET CLR是否对字符串文字/常量进行了任何巧妙的内存优化? 我可以发誓我听说过“字符串内化”的概念,所以在程序的任何两位代码中,字面意思“这是一个字符串”实际上是指同一个对象(大概是安全的,字符串是什么一成不变的?)。 我在谷歌上找不到任何有用的参考资料…… 我听错了吗? 别担心 – 我的代码中没有用这些信息做任何可怕的事情,只是想更好地了解它的工作原理。

为什么String.Equals返回false?

我有以下C#代码(来自我正在使用的库)试图找到比较指纹的证书。 请注意,在以下代码中, mycert.Thumbprint和certificateThumbprint都是字符串。 var certificateThumbprint = AppSettings.CertificateThumbprint; var cert = myStore.Certificates.OfType().FirstOrDefault( mycert => mycert.Thumbprint != null && mycert.Thumbprint.Equals(certificateThumbprint) ); 这无法找到带有指纹的证书,因为即使字符串相等, mycert.Thumbprint.Equals(certificateThumbprint)也为false 。 mycert.Thumbprint == certificateThumbprint也返回false ,而mycert.Thumbprint.CompareTo(certificateThumbprint)返回0。 我可能会遗漏一些明显的东西,但我无法弄清楚为什么Equals方法失败了。 想法?

如何删除字符串中重复的字符

我有一个网站,允许用户评论照片。 当然,用户会留下以下评论: ‘OMGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG !!!!!!!!!!!!!!!’ 要么 ‘你SUCCCCCCCCCCCCCCCKKKKKKKKKKKKKKKKKK’ 你懂了。 基本上,我想通过删除至少大多数重复多余的字符来缩短这些评论。 我确信有一种方法可以用Regex做到这一点。我只是想不出来。 有任何想法吗?

用于创建包含多个空白字符的字符串的替代方法

我想知道是否有更多的OO方式在C#中创建空格。 字面太空码! 我目前有tabs += new String(” “); 我不禁觉得这有点让人联想到使用””而不是String.Empty 。 我可以用什么来创建不是” “空格?

从字符串中删除字符的最快方法

我有一个字符串,我必须从中删除以下字符:’\ r’,’\ n’和’\ t’。 我尝试了三种不同的方法来删除这些字符并对它们进行基准测试,以便我可以获得最快的解决方案。 以下是我运行1000000次的方法和执行时间: 如果我要删除1或2个字符,它应该是最快的解决方案。 但随着我投入更多的焦炭,它开始花费更多的时间 str = str.Replace(“\r”, string.Empty).Replace(“\n”, string.Empty).Replace(“\t”, string.Empty); 执行时间= 1695 对于1或2个char,这比String.Replace慢,但是对于3个char它表现出更好的性能。 string[] split = str.Split(new char[] { ‘\t’, ‘\r’, ‘\n’ }, StringSplitOptions.None); str = split.Aggregate((str1, str2) => str1 + str2); 执行时间= 1030 最慢的,即使是1个字符。 也许我的正则表达不是最好的。 str = Regex.Replace(str, “[\r\n\t]”, string.Empty, RegexOptions.Compiled); 执行时间= 3500 这些是我提出的三个解决方案。 有没有更好更快的解决方案,这里的任何人都知道,或者我可以在此代码中做任何改进? 我用于基准测试的字符串 : StringBuilder builder = […]