查询LINQ字符串方法浅析

开发 后端
本文介绍了一种查询LINQ字符串的方法,LINQ 可用于查询和转换LINQ字符串和字符串集合。之后可以使用 LINQ 来查询或修改由正则表达式返回的 MatchCollection 结果。

LINQ字符串的查询方式有很多,在这里介绍一种最常规的方法。如果大家有更多更好的方法,欢迎提出来一起讨论。

LINQ可用于查询和转换LINQ字符串和字符串集合。它对文本文件中的半结构化数据尤其有用。LINQ 查询可与传统的字符串函数和正则表达式结合使用。例如,可以使用 Split 或 Split 方法来创建字符串数组,然后可以使用LINQ 来查询或修改此数组。可以在 LINQ 查询的where 子句中使用IsMatch 方法。可以使用LINQ 来查询或修改由正则表达式返回的MatchCollection 结果。

LINQ查询匹配给定的字符

  1. using System;  
  2. using System.Linq;  
  3. using System.Collections.Generic;  
  4. using System.Collections;  
  5.  
  6.  
  7. /// <summary>  
  8. ///Class1 学习linq   
  9.  
  10. /// </summary>  
  11. public class Class1  
  12. {  
  13.  public Class1()  
  14.  {  
  15.   //  
  16.   //TODO: 在此处添加构造函数逻辑  
  17.   //  
  18.  }  
  19.     public string LinqToString()  
  20.     {  
  21.           string text = @"Historically, the world of data and the world of objects" +  
  22.           @" have not been well integrated. Programmers work in C# or Visual Basic" +  
  23.           @" and also in SQL or XQuery. On the one side are concepts such as classes," +  
  24.           @" objects, fields, inheritance, and .NET Framework APIs. On the other side" +  
  25.           @" are tables, columns, rows, nodes, and separate languages for dealing with" +  
  26.           @" them. Data types often require translation between the two worlds; there are" +  
  27.           @" different standard functions. Because the object world has no notion of query, a" +  
  28.           @" query can only be represented as a string without compile-time type checking or" +  
  29.           @" IntelliSense support in the IDE. Transferring data from SQL tables or XML trees to" +  
  30.           @" objects in memory is often tedious and error-prone.";  
  31.  
  32.         string searchTerm = "data";  
  33.  
  34.         //将内容拆分成数组  
  35.         string[] source = text.Split(new char[] { '.''?''!'' '';'':'',' }, StringSplitOptions.RemoveEmptyEntries);  
  36.  
  37.         //从数组里查询符合条件的数据  
  38.         var matchQuery = from s in source where s.IndexOf('a')==0 orderby s ascending select s ;  
  39.  
  40.          
  41.         int wordCount = matchQuery.Count();  
  42.         string str="";  
  43.         foreach(string a in matchQuery)  
  44.             str+=a+",";  
  45.         //返回查询后的结果  
  46.         return str+":::"+wordCount;  
  47.  
  48.     }  
  49.       

【编辑推荐】

  1. LINQ——语言级集成查询入门指南
  2. LINQ的演变及其对C#设计的影响
  3. LINQ查询的目的与实现手段
  4. LINQ查询表达式深入剖析
  5. 实例二:绑定到LINQ查询的结果
责任编辑:林琳 来源: 博客园
相关推荐

2009-09-14 10:42:03

LINQ生成字符串

2009-07-16 17:01:09

Swing字符串

2009-09-17 11:16:44

LINQ代码生成

2009-09-10 14:47:53

Linq .NET查询

2009-09-14 18:23:59

LINQ嵌套查询

2009-09-15 09:19:22

linq动态条件

2009-09-17 18:05:15

linq to sql

2009-09-18 15:22:14

DataContextLINQ to SQL

2009-09-15 10:35:11

linq多表查询

2009-09-15 17:16:58

LINQ查询操作符

2009-09-14 17:10:57

LINQ模糊查询

2009-09-14 19:14:51

LINQ动态查询

2009-09-08 16:36:10

LINQ查询基于泛型类

2009-09-16 17:29:10

Linq查询二维数组

2009-09-17 08:47:00

Linq插入数据

2009-09-15 14:30:11

Linq连接

2009-09-17 09:09:50

Lambda表达式Linq查询

2009-09-14 18:19:49

LINQ模糊查询

2009-08-11 10:26:49

C#算法C#字符串反转

2009-12-23 09:04:41

LINQ通用分页
点赞
收藏

51CTO技术栈公众号