C# String.Join和String.Split参数助记符
每次我都会被C#的String.Join和String.Split参数类型绊倒。问题是C# String.Join和String.Split参数助记符,c#,string,mnemonics,C#,String,Mnemonics,每次我都会被C#的String.Join和String.Split参数类型绊倒。问题是String.Split采用params char[]字符数组,而String.Join采用String 有没有人有一个好的助记符,可以帮助我记住哪一个需要哪一个,这样我就不必在每次操作字符串时都修复这个问题 [编辑,因为每个人似乎都不明白我为什么没有IDE支持] 我正在使用LinqPad,就像这样,我大部分时间都在使用它: String.Join("\n", @"LongRawString WithPlent
String.Split
采用params char[]
字符数组,而String.Join
采用String
有没有人有一个好的助记符,可以帮助我记住哪一个需要哪一个,这样我就不必在每次操作字符串时都修复这个问题
[编辑,因为每个人似乎都不明白我为什么没有IDE支持]
我正在使用LinqPad,就像这样,我大部分时间都在使用它:
String.Join("\n", @"LongRawString
WithPlentyOfLines
UsuallyGeneratedBySomeoneElse
OrProducedBySqlServerForExample".Split('\n').Select(x =>
{
x = x.Trim();
//create line of code, like:
return "int longRawStringIdx = reader.GetOrdinal(\"LongRawString\")";
}))
我没有在LinqPad中获得IDE支持,我希望节省每次返回并修复它所需的几秒钟时间。这是愚蠢的,但是我们程序员编写的一半脚本也是愚蠢的,这些脚本是为了自动化我们每天做的12秒任务
问题是,我搞砸了是否应该将
Split
字符串或Join
字符串作为它的第一个参数(或者仅在Split
的情况下)。你可以这样想:你指定了一个要连接的东西,但有几个可能的分隔符需要拆分。这样做是有意义的,因为输入字符串可能已经有许多分隔符,但是在多个分隔符上进行连接是没有意义的,因为join
方法必须计算出您每次使用的分隔符
不过我还是用智能感知:)你到底有什么问题?IDE显示了可接受的参数…您始终可以定义自己的扩展方法,并使其在任何情况下都能正常工作。Join是静态的,而另一个不是,您知道这一点还不够吗?您不获得IDE支持的情况不止一种。例如,我使用LINQPad从其他数据生成代码(例如,使用C#的正则表达式支持的逐行操作要比Notepad++强大得多)。但是,当你在LinqPad工作时,你没有Intellisense,除非你付钱(我还没有付钱)。你仍然没有说明你的问题是什么。你是用字符串来代替字符,还是完全用其他的方法,这很有帮助。谢谢你,乔恩。我来自C++ C++ Python NLP背景,我们要么滚动自己的拆分/连接(C++中,因为我们处理大量的数据),或者我们使用Python拆分/连接,这是如此怪异,以至于我立刻记住了它们。