广告
返回顶部
首页 > 资讯 > 精选 >VB.NET正则表达式怎么用
  • 601
分享到

VB.NET正则表达式怎么用

2023-06-17 18:06:14 601人浏览 泡泡鱼
摘要

小编给大家分享一下VB.NET正则表达式怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、引言在通常的程序设计中,对字符串的操作是不可缺少的部分。例如,我们

小编给大家分享一下VB.NET正则表达式怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

1、引言

在通常的程序设计中,对字符串的操作是不可缺少的部分。例如,我们经常需要从字符串中寻找特定的部分,或者对某一部分进行替换、删除等等。使用传统的静态字符串操作方法只能查找字符串中固定不变的部分,缺乏灵活性。而用VB.net正则表达式则可以规定待查找字符串的模式,查找同一类型的字符串,例如要在EMaiL格式的字符串(如lzcarl@126.com)中分解出用户名和服务器名,可以定义如下的正则表达式(?<user>[^@]+)@(?<host>.+),然后使用相应的解析器进行解析,得到两个分组user组和host组,user组里存储用户名lzcarl,host组里存放服务器名126.com,而用传统的方法是很难实现这种分解的。

由此可见,作为一种字符串处理方式,正则表达式的灵活与强大确实是传统字符串处理方式无法相比的。

2、VB.NET正则表达式处理类

在VB.NET中使用正则表达式必须先引入命名空间System.Text.RegularExpressions,该命名空间包含一下七个类:Regex、Match、MatchCollection、GroupCollection、CaptureCollection、Group、Capture。

Regex类表示不可变(只读)正则表达式类,设置待匹配字符串的模式。Match 类表示正则表达式匹配操作的结果。MatchCollection 类表示成功的非重叠匹配的序列,即匹配后得到的字符串集合。在正则表达式中应用最多的就是这三个类。

使用正则表达式类的通用方法是:

首先生成一个Regex类的实例,并在传入参数中输入正则表达式的模式,然后使用Regex类的相应方法,如IsMatch(判断是否
匹配)、Match(返回匹配得到的字符串)等等。

当然也可以使用Regex类的共享方法而不实例化Regex类&mdash;&mdash;IsMatch、Match等等(即上述方法的共享版本)获得所需要的结果。这种方法适于匹配模式不固定,匹配次数不多的情况。

接下来给出一个VB.NET正则表达式的应用。

3、时间解析程序

该程序读取用户输入的时间长度字符串(如XX小时XX分钟XX秒),把它解析,***用秒表示该时间长度(XX秒)。

当用户在文本框中输入时间值后,点计算后就会在“结果”后面得到用秒表示的时间值。

该程序首先从文本框中读入时间值,然后分别查找其中的小时、分钟、秒部分,在这里就使用了正则表达式对时间表达式进行解析。如小时数的正则表达式可表示为“[0-9]+小时”。“[0-9]”表示0到9间的任意数字都可以被匹配,“+”表示该字符可以出现一次或更多,因此“[0-9]+”即可以匹配任意长度整数(关于正则表达式的语法可以参见MSDN的相应部分),用这个字符串模式就可以查找出表达式中的小时部分。在分别匹配得到小时数、分钟数和秒数后计算得到总的秒数,并显示在“结果”后面。

程序包括一个计算时间的正则表达式工具类TimeRegex,及FORM1界面类。

TimeRegex类代码如下:

  1. Imports System.Text.RegularExpressions  

  2. Public Class TimeRegex  

  3. Private hour As Integer = 0 

  4. Private minute As Integer = 0 

  5. Private second As Integer = 0 

  6. Private totalTime As Integer = 0 

  7. Private exp As String '时间表达式  

  8. Sub New()  

  9. End Sub  

  10. '根据时间文本解析出其中的数字部分  

  11. Private Function getTime(ByVal 
    timeKind As String) As String  

  12. Dim timeMatch As Match  

  13. Dim time As String  

  14. '先从中解析出包含数字和中文的部分  

  15. timeMatch = Regex.Match(exp, timeKind)  

  16. If timeMatch.Success = True Then  

  17. time = timeMatch.Value  

  18. '然后从得到的文本中解析出数字  

  19. Return Regex.Match(time, "[0-9]+").Value  

  20. Else  

  21. Return "0"  

  22. End If  

  23. End Function  

  24. '根据传入的表达式计算总时间  

  25. Public Function getTotalTime(ByVal 
    _exp As String) As Integer  

  26. exp = _exp 

  27. '分别计算出小时,分钟,秒,然后得到总时间  

  28. hour = Integer.Parse(getTime("[0-9]+小时"))  

  29. minute = Integer.Parse(getTime("[0-9]+分钟"))  

  30. second = Integer.Parse(getTime("[0-9]+秒"))  

  31. totalTime = hour * 3600 + minute * 60 + second  

  32. Return totalTime  

  33. End Function  

  34. End Class  

  35. Form1类代码如下:  

  36. Public Class Form1  

  37. Inherits System.windows.Forms.Form  

  38. Private regex As New TimeRegex 

Windows窗体设计器生成代码省略

  1. Private Sub Button1_Click
    (ByVal sender As System.Object, 
    ByVal e As System.EventArgs) 
    Handles Button1.Click  

  2. SecondTime.Text = regex.
    getTotalTime  

  3. (timeExp.Text).ToString & "秒"  

  4. End Sub  

  5. End Class 

用户输入1小时1分钟1秒后点计算,得到结果3661秒,证明结果正确。

以上是“VB.NET正则表达式怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: VB.NET正则表达式怎么用

本文链接: https://www.lsjlt.com/news/291573.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • VB.NET正则表达式怎么用
    小编给大家分享一下VB.NET正则表达式怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、引言在通常的程序设计中,对字符串的操作是不可缺少的部分。例如,我们...
    99+
    2023-06-17
  • 什么是VB.NET正则表达式
    这篇文章主要介绍了什么是VB.NET正则表达式,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.什么是VB.NET正则表达式 基本说来,正则表达式是一种用来描述一定数量文本的...
    99+
    2023-06-17
  • VB.NET正则表达式的示例分析
    小编给大家分享一下VB.NET正则表达式的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.选择符 VB.NET正则表达式中“ &brvbar;”...
    99+
    2023-06-17
  • Oracle正则表达式怎么用
    这篇文章给大家分享的是有关Oracle正则表达式怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。oracle正则表达式 ORACLE中的支持正则表达式的函数主要有下面四个: ...
    99+
    2022-10-18
  • JavaScript正则表达式怎么用
    这篇文章主要为大家展示了“JavaScript正则表达式怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JavaScript正则表达式怎么用”这篇文章吧。什...
    99+
    2022-10-19
  • Flex正则表达式怎么用
    这篇文章主要为大家展示了“Flex正则表达式怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Flex正则表达式怎么用”这篇文章吧。Flex正则表达式学习一般来说各个开发环境或者语言对于Fle...
    99+
    2023-06-17
  • Shell正则表达式怎么用
    这篇文章将为大家详细讲解有关Shell正则表达式怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、正则表达式是什么?正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、...
    99+
    2023-06-09
  • 在python正则表达式中是怎样正确使用正则表达式
    这篇文章将为大家详细讲解有关在python正则表达式中是怎样正确使用正则表达式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。现在我们已经看了一些简单的正则表达式,那么我们实际在 Python...
    99+
    2023-06-17
  • Python中怎么使用正则表达式及正则表达式匹配规则是什么
    1 导库import re2 使用模板re_pattern = re.compile(pattern, flags=0) result = re.findall(re_pattern,string)3 说明参数描述pattern匹配的正则表...
    99+
    2023-05-14
    Python
  • 正则表达式
    2019-01-16 作用 :     路由匹配,表单信息的验证  (字符串匹配) 信息提取(在大段文本中提取信息,爬虫) 字符串的提取和校验 []在中括号内匹配任意项  [^]不匹配中括号中的任意一项    [0-9]  0123......
    99+
    2023-01-30
    正则表达式
  • Java中怎么用正则表达式
    这篇文章将为大家详细讲解有关Java中怎么用正则表达式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。学习正则表达式,用Jdk1.4后的java.util.regex模式:我们来看一些更常用的表达式的种类文...
    99+
    2023-06-03
  • Shell中正则表达式怎么用
    这篇文章主要介绍Shell中正则表达式怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!正则表达式    正则表达式:编写处理字符串的程序或网页时,用于描述查找符合某些复杂规则的字符串的工具。换...
    99+
    2023-06-06
  • pcre正则表达式怎么使用
    PCRE正则表达式的使用可以分为两个步骤:编译和匹配。1. 编译正则表达式:可以使用`preg_compile()`函数来编译一个正...
    99+
    2023-09-29
    pcre
  • js 怎么使用正则表达式
    在 JavaScript 中,可以使用正则表达式的两种方式:使用 RegExp 对象或者使用正则表达式字面量。1. 使用 RegEx...
    99+
    2023-09-20
    js
  • Oracle中正则表达式怎么用
    小编给大家分享一下Oracle中正则表达式怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Oracle使用正则表达式离不开这...
    99+
    2022-10-18
  • 怎么使用javascript正则表达式
    本篇内容介绍了“怎么使用javascript正则表达式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!表单验...
    99+
    2022-10-19
  • Java中正则表达式怎么用
    这篇文章将为大家详细讲解有关Java中正则表达式怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Java 正则表达式的使用,具体内容如下所示:java.util.regex.Patternjava.u...
    99+
    2023-05-31
    java
  • hive中正则表达式怎么用
    小编给大家分享一下hive中正则表达式怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! hive中的正则表达式还是很强大的。数据工作者平时也离不开正则表达式。...
    99+
    2023-06-03
  • go正则表达式怎么应用
    正则表达式是一种用于匹配字符串模式的工具,可以在多种编程语言中应用。以下是一个简单的例子,展示了在Python中如何使用正则表达式进...
    99+
    2023-10-09
    go
  • python的正则表达式怎么用
    这篇文章主要为大家展示了“python的正则表达式怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python的正则表达式怎么用”这篇文章吧。一、正则表达式–元字符re 模块使 Python...
    99+
    2023-06-25
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作