【c# – 通过SyntaxFactory构建NameOf表达式(Roslyn)】教程文章相关的互联网学习教程文章

C#表达式按键字段对通用查询进行排序【代码】

我有一个通用的方法,我想在其中排序IQueryable< T>通过其关键字段(假设只有一个是安全的).从而:void DoStuff<T>(...) {IQueryable<T> queryable = ... // givenPropertyInfo keyField = ... // givenvar sortedQueryable = queryable.OrderBy(<some expression here>);... }如何定义一个将返回T的keyField属性的Expression,以便它可以工作?解决方法:这并不太难,但您需要使用反射调用OrderBy,因为您不知道关键字段的类型.所以考虑...

c# – 是否可以编写正则表达式来检查:【代码】

是否可以编写正则表达式来检查特定10位数的所有数字是否最多出现3次?例如,Regex.IsMatch(“xxxx”,“4433425425”)的返回值为false.并且对于Regex.IsMatch(“xxxx”,“4463322545”)是真的.什么是xxxx?在第一个中,我有4个出现的数字4,在第二个中,非数字出现超过3次.解决方法:将匹配具有四个或更多实例的任何数字string found = Regex.Match(s,@"(\d).*\1.*\1.*\1").Groups[1].Value;只是一个如何使用它的例子static void Main( ...

c# – 6位int的正则表达式,不能是连续的或重复的数字?【代码】

我试图得到一个正则表达式,检查以确保提供的int是6位数,它不是顺序的,也不包含所有重复的数字,无论是按升序还是降序.我真的不在乎正则表达式是否返回非允许数字的匹配项,或者如果允许则返回原始数字的匹配项. 所以例如所有这些数字都是我不需要通过正则表达式验证的:123456 654321 069 456789 2435 444444虽然这些数字会通过:044346 666605 042004 678853谢谢. 编辑:出现正则表达式不适合这个.很多很好的答案和多个是正确的,所...

C#常用正则表达式回顾【代码】

项目中有些时候需要用到正则表达式,但是自己对正则表达式不熟悉,每次学习完,过一段时间(长时间)不用,就又忘了,每次需要用到的时候都需要百度下,比较麻烦,这里把C#中经常用到的正则表达式做下总结。 正则表达式常用的环境 爬虫、网站数据验证、日志分析、字符串替换、获取子字符串、文本处理、字符串处理等 正则基础 1. []方括号表示匹配可以匹配方括号中的任意点单个字符,方括号只允许匹配单个字符。2. | 或表示两项之间...

c# – 绑定表达式错误:在对象上找不到属性【代码】

我有WPF applcation,其中我使用了DataBinding作为comboBox. projectList中的ProjectName应该在我的comboBox中添加,但是当我运行应用程序时,每次我都会收到这些错误;System.Windows.Data Error: 40 : BindingExpression path error: ‘projectList’ property not found on ‘object’ ”DayView’ (Name=’MainWin’)’. BindingExpression:Path=projectList; DataItem=’DayView’ (Name=’MainWin’); target element is ‘Combo...

C#3.0新增功能10 表达式树 06 生成表达式树【代码】

连载目录 【已更新最新开发文章,点击查看详细】 到目前为止,你所看到的所有表达式树都是由 C# 编译器创建的。 你所要做的是创建一个 lambda 表达式,将其分配给一个类型为 Expression<Func<T>> 或某种相似类型的变量。 这不是创建表达式树的唯一方法。 很多情况下,可能需要在运行时在内存中生成一个表达式。 由于这些表达式树是不可变的,所以生成表达式树很复杂。 不可变意味着必须以从叶到根的方式生成表达式树。 用于生成...

C#中的正则表达式【代码】

我有这样的文字.@@MMIVLoader@ProductVer@4.1.2@BCM_7400S_LE@Product@Aug 21 2009@@@MMIVLib@ObjectVer@4.1.2@BCM_7400S_LE@Product@Aug 21 2009@@@HuaweFGDLDrv@ObjectVer@01.00.09@7324@PRODUCT@Aug 20 2009@@@ProtectVer@ObjectVer@127.8.1 @BCM_SDE5.03@PRODUCT@Aug 4 2009 06:56:19@@@KernelSw@ObjectVer@0.0.1@BCM-7454@PRODUCT@ Dec 19 2007@@@ReceiverSw@ObjectVer@E.5.6.001@HWBC01ZS@PRODUCT@May 3 2010@我希望输出像一...

c# – 正则表达式 – 将target =“blank”添加到我的内容中的所有标记链接【代码】

有人可以帮我在C#.net中创建一个正则表达式,将target =“_ blank”添加到所有< a>在我的内容中标记链接? 如果链接已经有目标集,则将其替换为“_blank”.目的是在新窗口中打开我的内容中的所有链接. 感谢您的帮助 -dotnet rocks解决方法:关于not to use regex when parsing HTML有很多提及,所以你可以使用Html Agility Pack:HtmlDocument document = new HtmlDocument(); document.LoadHtml(yourHtml);var links = document.Docum...

c# – 是否有任何LINQ表达式将数据表转换为字典【代码】

我有很多情况下我会进行查询并获取数据表并将其转换为:Dictionary<string, string>要么Dictionary<int, int>要么Dictionary<string, [Someobject]>我可以使用循环创建自己的函数,但我想看看是否有任何LINQ方式将数据表转换为字典,只是为键和值传递2个lambdas(类似于将IEnumerable转换为字典所能做到的)解决方法:你可以使用AsEnumerable& ToDictionary: 例如,如果您想要一个字典,其中键来自col1,值来自col2:table.AsEnumerable()...

c# – 使用正则表达式匹配多个模式【代码】

我有3组:时间,日期和别针.我可以让这一行匹配这一行:26/06/2012 33:06:12a_user_logged_in,3412234,2,3,512,333:06:12a_user_logged_in,3412234,2,3,512,3,26/06/201226/06/2012 a_user_logged_in_at,33:06:12,3412234,2,3,512,3我希望将26/06/2012作为日期组,33:06:12作为时间,将3412234作为引脚组. 我已经成功地做到了这一点,但只有线条必须像第一个一样处于某种模式(?<date>[\d]+/[\d]+/[\d]+) (?<time>[\d]+:[\d]+:[\d]+)(...

c# – 难以理解特定的lambda表达式【代码】

对于一个熟悉lambda的人来说,这是一个非常简单的问题.我刚刚学习它,并遇到了一个对我没有意义的表达. 根据我的理解,lambda表达式传入左侧指定的变量并运行右侧的代码.例如myFunction = x => x + x;所以myFunction(2)会返回4. 无论如何,我在这里看了一个linq查询,看到了这个:IEnumerable<int> numQuery2 = numbers.Where(num => num % 2 == 0).OrderBy(n => n);n =>那……那是做什么的?为什么不说OrderBy(n)?你正在做的就是将n传...

c# – 正则表达式以获得所有匹配的位置【代码】

我们来看看这段代码var input = @" a:1 b:22a:3 b:44 ";var pattern = @"b:([^\n]+)\n"; var match = Regex.Match(input, pattern);我得到的结果是在下面的快照. 我们如何获得b的值列表,例如{22,44}? 我只能看到22.解决方法:使用Regex.Matches方法而不是Regex.Match.这是MSDN的一个例子string pattern = "a*"; string input = "abaabb";foreach (Match m in Regex.Matches(input, pattern)) Console.WriteLine("'{0}' found at in...

c# – LINQ lambda表达式替换字符串中的多个字符?【代码】

是否有可能编写一个lambda表达式,它将迭代对象数组并替换其中一个属性中的’X’,’Y’,”和’Z’的所有出现? 例如.return query.Select(x => { x.SomePropertyName= x.SomePropertyName.Trim().Replace(' ', "_"); return x; }).ToList();出于某种原因,当我需要替换多个字符时,上面的查询不会替换单个字符. 谢谢解决方法:当我想用一个单独的其他字符替换多个字符中的一个时,我经常使用string.Split和string.Join的组合:char[] un...

c# – Lambda表达式不正确【代码】

我从我认为构造正确的查询得到了奇怪的结果. 此查询返回2个值,这是正确的:int userId = GetUserId(); //Not exactly like this; simplified var context = new Entities(); //Get the roles var relations = (from q in context.UserHasRolewhere q.UserId == userIdselect q).ToList(); List<Roles> roles = new List<Roles>(); foreach (var item in relations) {Roles role = (from r in context.Roleswhere r.Id == item.Rol...

c# – 用于消除空格,正斜杠和反斜杠的正则表达式【代码】

我写了一个正则表达式,它应该匹配一个没有空格,向前或向后斜杠的字符串.问题是,我遇到了“未终止的设置”错误. 我的正则表达式:Regex checkForSpace = new Regex("^[^\\s\\/\\]+$");它在我添加反斜杠片段之前应该正常工作,现在我收到了错误.不完全确定我做错了什么.这是我对正则表达式的第一次重要体验. 任何意见,将不胜感激.解决方法:你正在意外地逃避正则表达式中的结束]. 试试这个:Regex C# string White space \s ...

SYNTAX - 相关标签