温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何理解C#.NET regexp类

发布时间:2021-06-16 11:29:31 来源:亿速云 阅读:129 作者:chen 栏目:编程语言

本篇内容介绍了“如何理解C#.NET regexp类”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

C#.NET还是比较常见的东西,这里我们主要介绍C#.NET regexp类,包括介绍基于过程和基于表达式方法的比较等方面。

多少年来,许多的编程语言和工具都包含对规则表达式的支持,.NET基础类库中包含有一个名字空间和一系列可以充分发挥规则表达式威力的类,而且它们也都与未来的Perl 5中的规则表达式兼容。

此外,C#.NET regexp类还能够完成一些其他的功能,例如从右至左的结合模式和表达式的编辑等。

在这篇文章中,我将简要地介绍System.Text.RegularExpression中的类和方法、一些字符串匹配和替换的例子以及组结构的详细情况,***,还会介绍一些你可能会用到的常见的表达式。

应该掌握的基础知识

规则表达式的知识可能是不少编程人员“常学常忘”的知识之一。在这篇文章中,我们将假定你已经掌握了规则表达式的用法,尤其是Perl 5中表达式的用法。C#.NET regexp类是Perl 5中表达式的一个超集,因此,从理论上说它将作为一个很好的起点。我们还假设你具有了C#的语法和.NET架构的基本知识。

如果你没有规则表达式方面的知识,我建议你从Perl 5的语法着手开始学习。在规则表达式方面的权威书籍是由杰弗里·弗雷德尔编写的《掌握表达式》一书,对于希望深刻理解表达式的读者,我们强烈建议阅读这本书。

RegularExpression组合体
regexp规则类包含在System.Text.RegularExpressions.dll文件中,在对应用软件进行编译时你必须引用这个文件,例如,csc r:System.Text.RegularExpressions.dll foo.cs命令将创建foo.exe文件,它就引用了System.Text.RegularExpressions文件。

基于过程和基于表达式方法的比较

一般情况下,使用规则表达式的用户可以分为以下二大类:***类用户尽量不使用规则表达式,而是使用过程来执行一些需要重复的操作;第二类用户则充分利用规则表达式处理引擎的功能和威力,而尽可能少地使用过程。

对于我们大多数用户而言,***的方案莫过于二者兼而用之了。我希望这篇文章能够说明C#.NET regexp类的作用以及它在性能和复杂性之间的优、劣点。

基于过程的模式

我们在编程中经常需要用到的一个功能是对字符串中的一部分进行匹配或其他一些对字符串处理,下面是一个对字符串中的单词进行匹配的例子:

string text = "the quick red fox jumped over the lazy brown dog.";  System.Console.WriteLine("text=[" + text + "]");  string result = "";  string pattern = @"\w+|\W+";  foreach (Match m in Regex.Matches(text, pattern))  {  // 取得匹配的字符串  string x = m.ToString();  // 如果***个字符是小写  if (char.IsLower(x[0]))  // 变成大写  x = char.ToUpper(x[0]) + x.Substring(1, x.Length-1);  // 收集所有的字符  result += x;  }  System.Console.WriteLine("result=[" + result + "]");

“如何理解C#.NET regexp类”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI