Tag: 字符串

当两者都是引用类型时,字符串与类

这是我上一次采访的方式: 问题:字符串存储在哪里? 答:堆是因为它是参考类型 问题:请解释以下代码: static void Main(string[] args) { string one = “test”; string two = one; one = one + ” string”; Console.WriteLine(“One is {0}” , one); Console.WriteLine(“Two is {0}”, two); } 答案:画了两张如下图: (代表声明, string two = one; (表示语句, one = one + ” string”; ;.在堆上创建一个新字符串并分配) 问题:正确。 为下面的代码片段绘制类似的内容: class Program { static void Main(string[] […]

如何将字符串值转换为对象属性名称

这是我第一次在C#/ .NET中做这样的事情,并且有点让我想起使用eval()函数或动态编写脚本并生成HTML在JavaScript中可以轻松完成的事情。 我有一个从用户输入中获取的字符串,比如string input = “foo” 。 现在我想使用值”foo”作为我拥有的对象的属性名称,例如以这样的方式cover : string input = “foo”; //magic to convert string value to be used //as a object property name goes here maybe… var success = cover.foo; C#中有没有办法可以做这样的事情? 可能使用reflection? 我已经尝试但是我总是带着一个并没有真正解决问题的对象返回。

在巨大的字符串中替换多个字符串的最快方法

我正在寻找替换大(~1mb)字符串的多个(~500)子串的最快方法。 无论我尝试过什么,似乎String.Replace是最快的方式。 我只关心最快的方式。 不是代码可读性,可维护性等。我不在乎我是否需要使用不安全的代码或预处理原始字符串。 编辑:评论后我添加了一些更多细节: 每个替换迭代将使用其他字符串替换字符串上的ABC(每个替换迭代不同)。 要替换的字符串总是相同的 – ABC将永远是ABC。 从不ABD。 因此,如果有400.000个替换迭代。 每次使用相同的字符串 – ABC – 将替换为其他(不同的)字符串。 我可以控制ABC是什么。 只要它不影响结果,我可以使它超短或超长。 显然,ABC不能打招呼,因为hello将在大多数输入字符串中作为单词存在。 输入示例: ABCDABCABCDABCABCDABCABCDABCD 示例替换为字符串: BC 示例替换为字符串: AA, BB, CC, DD, EE (5 iterations) 示例输出: AAADAAAAAADAAAAAADAAAAAADAAAD ABBDABBABBDABBABBDABBABBDABBD ACCDACCACCDACCACCDACCACCDACCD ADDDADDADDDADDADDDADDADDDADDD AEEDAEEAEEDAEEAEEDAEEAEEDAEED 平均情况:输入字符串为100-200kb,替换迭代次数为40.000次。 最坏的情况:输入字符串是1-2mb,400,000次替换迭代。 我可以做任何事。 并行做,做不安全等等。无论我怎么做。 重要的是它需要尽可能快。 谢谢

仅在XML中替换属性中的双引号:C#

我有这个字符串,它将成为XML / XML节点的一部分: string a = “”; 我只需要转义属性引号,以便它成为 a= “Node a=\”a&qout;[&qout;\”/>”; 我正在使用C#,.NET 2.0。

匹配括号之间的整数

我得到了以下格式的一串字符串: ASDF [ 6] ZXC[1] OtPasd[ 4 ] asdffa[ 7] 我需要检索有效字符串括号之间的整数。 字符串有效,只要: 括号之间仅存在空格。 IE:“ZXCV [a2]”无效 所有支架都已正确关闭。 IE:“qwr [2”无效 所有琴弦只有一个开/关括号。 IE:“zxcf [4]]]”无效 我最好避免使用正则表达式,因为我得到了大量的字符串,所以计算上不密集的东西会更好。 validation和检索整数的最简洁, 最快捷的方法是什么? 编辑:我决定使用正则表达式。

随机化一个字符串

我是C#的新手,所以不要因为我的愚蠢而责备我。 我正在研究一个应该随机化一个单词并给它长度的应用程序,例如你写一个单词“Line”,它会给你“iLen”。 目前我确信只有这部分有效: private void lenght_Click(object sender, EventArgs e) { String word = textBox1.Text; int x = word.Length; MessageBox.Show(x.ToString()); } private void randomize_Click(object sender, EventArgs e) { String word = textBox1.Text; int x = word.Length; } 我尝试了很多,但大部分只是崩溃了应用程序,所以此刻我想知道Text.ToCharArray做了什么,我希望得到额外的支持。 所以我只需要一个方法,使你的字符串随机化,它给你另一个字符串只有mashed / randomized字符。 现在我将留下5到7个小时的问题以获得更多的答案,我将对它们进行全面审查,并对工作人员进行回复。 谢谢你的支持! 我已经阅读了你所有的评论但我已经很晚了很抱歉,现在是时候检查一切了。

使用c#中的字典计算字符串中每个重复单词的出现次数

编辑:我详细阐述了我的问题更多..解决方案在这里是一个修复重复的单词..我被问到每个重复的单词 我是新手……可能不是一个好问题。 …… 这是字符串 string str = “this this is is aa string” 在采访中,我被要求将每个重复关键字的计数存储在通用字典中,然后按顺序显示它们 例如,“is”关键字的出现次数为2 类似的链接 : 在字符串C#中找到最多出现的字符? 这是关于寻找角色 查找文本中单词出现的列表单词,这是在python中 在javaScript中删除字符串中重复单词的出现 如何使用string.match方法查找字符串中同一个单词的多个匹配项? 不相关 ..请建议

删除之外的不需要的文本

我想从文本框中删除除本之外的所有文本。

如何通过param将大于200个字符的字符串传递给存储过程

我遇到了一个问题,在我的代码中,我必须对我的数据表中存在的所有文章进行求和请求,我将所有文章ID连接在一个字符串中,如’a1,a2,a3’,这应该可行。 但我有大型ID和大约150篇文章,所以我尝试传递给存储过程的字符串大约1300个字符,当它转到存储过程时这是200个字符的截断。 你知道任何解决方案将大字符串传递给没有SQL Server的存储过程来截断这个字符串吗? 我可以在这里写下C#代码或SQL存储过程,如果它可以帮助你帮助我。 这是存储过程: ALTER PROCEDURE [dbo].[GetChargePetrin] — Add the parameters for the stored procedure here @articlesList varchar(MAX) AS BEGIN — SET NOCOUNT ON added to prevent extra result sets from — interfering with SELECT statements. SET NOCOUNT ON; SELECT CAST(SUM(CAST(Qa01 AS INT) /CAST(a.CO_UQB_PET AS INT)) AS varchar) as ‘qa1’, CAST(SUM(CAST(Qa02 AS INT) […]

将字符串集合连接成一个带分隔符和封闭字符的字符串

我有一组源字符串,我希望连接到一个目标字符串。 源集合如下所示: { “a”, “b”, “c” } 我希望输出字符串是: abc 但有时,我也想要一个分隔符。 所以对于相同的输入,现在输出是: abc 最后,输入有时需要包含在其他字符中,在本例中为[] ,导致输出为: [a]-[b]-[c] 空源集合应该产生一个空字符串。 我怎么会这样呢?