C# Regex正则匹配所有字符(遇到换行回车\r\n问题)
[ 2023-01-14 16:30:08 | 作者: admin ]
使用Regex.Match()方法的时候,想匹配一个子串,但是要匹配的内容可能在我加载的资源中出现换行,比如我的资源内容为john \r\n smith,我想把john smith匹配出来。
1. 正则表达式中点号(.)代表除了\n以外的所有字符,但是这仅限于在中括号外使用([]),如果在中括号内使用,就仅代表点号本身,所以这个正则可以写为 "john(.|\n)*?smith"。
2. 正则表达式中\s代表包含制表(\t),换行,空格的所有空白字符,\S代表不包含制表,换行,空格的所有非空白字符,那么这2个自由组合就可得到所有字符,所以可以这么写"johnbbs[\s\S]*?smith",
3. C#正则表达式namespace中Regex.Match()方法接收第3个参数,这个参数是一个RegexOptions枚举,经过我的试验,发现我要匹...
阅读全文…
1. 正则表达式中点号(.)代表除了\n以外的所有字符,但是这仅限于在中括号外使用([]),如果在中括号内使用,就仅代表点号本身,所以这个正则可以写为 "john(.|\n)*?smith"。
2. 正则表达式中\s代表包含制表(\t),换行,空格的所有空白字符,\S代表不包含制表,换行,空格的所有非空白字符,那么这2个自由组合就可得到所有字符,所以可以这么写"johnbbs[\s\S]*?smith",
3. C#正则表达式namespace中Regex.Match()方法接收第3个参数,这个参数是一个RegexOptions枚举,经过我的试验,发现我要匹...
阅读全文…
Microsoft Visual Studio 开发 fiddler 插件过程总结
[ 2023-01-11 23:40:48 | 作者: admin ]
C# 版本和.NET 版本以及VS版本的对应关系
[ 2023-01-11 23:14:02 | 作者: admin ]
简单的来说: VS2010 最高用到 .Net Framework4,C# 4.0
阅读全文…
阅读全文…
C#--LINQ--查询语句与查询方法
[ 2022-02-07 21:31:12 | 作者: admin ]
C#--LINQ--查询语句与查询方法 https://blog.csdn.net/qq_36482772/article/details/78726618c# Linq查询 https://www.cnblogs.com/dullfish/p/6101912.html阅读全文…
c#如何选择数据结构
[ 2022-01-24 16:59:42 | 作者: admin ]
p.s.常用的数组
文章:常用数据结构及复杂度,必须看一看 https://www.cnblogs.com/gaochundong/p/3813252.html#!comments
Array (T[])
当元素的数量是固定的,并且需要使用下标时。
string[] news = new string[10]; //一维数组
string[,] news = new string[10,8]; //二维数组
int[][] numbers = { new int[] {2,3,4}, new int[] {5,6,7,8,9} }; //数组成员也是数组的情况
Linked list (LinkedList<T>)
当元素需要能够在列表的两端添加时。否则使用 List<T>。
Resizable ...
阅读全文…
文章:常用数据结构及复杂度,必须看一看 https://www.cnblogs.com/gaochundong/p/3813252.html#!comments
Array (T[])
当元素的数量是固定的,并且需要使用下标时。
string[] news = new string[10]; //一维数组
string[,] news = new string[10,8]; //二维数组
int[][] numbers = { new int[] {2,3,4}, new int[] {5,6,7,8,9} }; //数组成员也是数组的情况
Linked list (LinkedList<T>)
当元素需要能够在列表的两端添加时。否则使用 List<T>。
Resizable ...
阅读全文…
C#中List怎么用?泛型List基础用法汇总
[ 2022-01-24 16:47:22 | 作者: admin ]
C#中的List怎么样?List<T>类是ArrayList类的泛型等效类,该类使用大小可按需动态增加的数组实现IList<T>泛型接口。
泛型的好处:它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换,所以性能得到提高。
性能注意事项:在决定使用IList<T>还是使用ArrayList类(两者具有类似的功能)时,记住IList<T>类在大多数情况下执行得更好并且是类型安全的。如果对IList<T>类的类型T 使用引用类型,则两个类的行为是完全相同的。但是,如果对类型T 使用值类型,则需要考虑实现和装箱问题。
C# List的基础常用方法:
一、声明:
1、List<T> mList = new List<T>();
T为列表中元素类型,现在以string类型作为例子:
...
阅读全文…
泛型的好处:它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换,所以性能得到提高。
性能注意事项:在决定使用IList<T>还是使用ArrayList类(两者具有类似的功能)时,记住IList<T>类在大多数情况下执行得更好并且是类型安全的。如果对IList<T>类的类型T 使用引用类型,则两个类的行为是完全相同的。但是,如果对类型T 使用值类型,则需要考虑实现和装箱问题。
C# List的基础常用方法:
一、声明:
1、List<T> mList = new List<T>();
T为列表中元素类型,现在以string类型作为例子:
...
阅读全文…
C#中数组、ArrayList和List三者的区别
[ 2022-01-24 16:37:45 | 作者: admin ]
在C#中数组,ArrayList,List都能够存储一组对象,那么这三者到底有什么样的区别呢。
数组
数组在C#中最早出现的。在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也很简单。
//数组
string[] s=new string[2];
//赋值
s[0]="a";
s[1]="b";
//修改
s[1]="a1"; 但是数组存在一些不足的地方。在数组的两个数据间插入数据是很麻烦的,而且在声明数组的时候必须指定数组的长度,数组的长度过长,会造成内存浪费,过段会造成数据溢出的错误。如果在声明数组时我们不清楚数组的长度,就会变得很麻烦。
针对数组的这些缺点,C#中最先提供了ArrayList对象来克服这些缺点。
ArrayList
...
阅读全文…
数组
数组在C#中最早出现的。在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也很简单。
//数组
string[] s=new string[2];
//赋值
s[0]="a";
s[1]="b";
//修改
s[1]="a1";
针对数组的这些缺点,C#中最先提供了ArrayList对象来克服这些缺点。
ArrayList
...
阅读全文…
C#泛型类的定义及使用
[ 2022-01-23 15:19:39 | 作者: admin ]
C# 语言中泛型类的定义与泛型方法类似,是在泛型类的名称后面加上<T>,当然,也可以定义多个类型,即“<T1,T2,・・・>”。
具体的定义形式如下。
这样,在类的成员中即可使用 T1、T2 等类型来定义。
下面通过实例来演示泛型类的使用。
【实例】定义泛型类,并在泛型类中定义数组,提供添加和显示数组中全部元素的 方法。
根据题目要求,代码如下。
阅读全文…
具体的定义形式如下。
class 类名<T1,T2,…>
{
//类的成员
}
{
//类的成员
}
这样,在类的成员中即可使用 T1、T2 等类型来定义。
下面通过实例来演示泛型类的使用。
【实例】定义泛型类,并在泛型类中定义数组,提供添加和显示数组中全部元素的 方法。
根据题目要求,代码如下。
class MyTest<T>
{
private T[] items = new T[3];
private int index = 0;
//向数组中添加项
public void Add(T t)
{
if (index < 3)
{
...{
private T[] items = new T[3];
private int index = 0;
//向数组中添加项
public void Add(T t)
{
if (index < 3)
{
阅读全文…