Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 使用正则表达式检查URL是否包含某些组件_Regex_Vb.net - Fatal编程技术网

Regex 使用正则表达式检查URL是否包含某些组件

Regex 使用正则表达式检查URL是否包含某些组件,regex,vb.net,Regex,Vb.net,如何检查“”的结构是否如下->在Visual Basic.NET中使用正则表达式?您可以尝试使用http:\/\/.+\.php\?.+=.+\.php来匹配它。可以找到我用于测试的一些示例 它分解成您想要的不同组件,并将它们串在一起。要匹配字符串,可以使用+进行非贪婪捕获。这将帮助您匹配正则表达式的其余有效部分,如php处理 http:\//与您的http:// +\.php匹配字符串,后跟.php \?。+=匹配一个?字符串,后跟一个+和一个= +\.php最后再次找到一个字符串,后跟.p

如何检查“”的结构是否如下->在Visual Basic.NET中使用正则表达式?

您可以尝试使用
http:\/\/.+\.php\?.+=.+\.php
来匹配它。可以找到我用于测试的一些示例

它分解成您想要的不同组件,并将它们串在一起。要匹配
字符串
,可以使用
+
进行非贪婪捕获。这将帮助您匹配正则表达式的其余有效部分,如
php
处理

  • http:\//
    与您的
    http://
  • +\.php
    匹配
    字符串,后跟
    .php
  • \?。+=
    匹配一个
    字符串,后跟一个
    +
    和一个
    =
  • +\.php
    最后再次找到一个
    字符串,后跟
    .php
编辑:从myregextster.com生成的VB.NET的一些示例代码:

Imports System.Text.RegularExpressions
Module Module1
  Sub Main()
    Dim sourcestring as String = "replace with your source string"
    Dim re As Regex = New Regex("http:\/\/.+\.php\?.+=.+\.php")
    Dim mc as MatchCollection = re.Matches(sourcestring)
    Dim mIdx as Integer = 0
    For each m as Match in mc
      For groupIdx As Integer = 0 To m.Groups.Count - 1
        Console.WriteLine("[{0}][{1}] = {2}", mIdx, re.GetGroupNames(groupIdx), m.Groups(groupIdx).Value)
      Next
      mIdx=mIdx+1
    Next
  End Sub
End Module

每当我试图匹配它时,我的VB.NET就会冻结。@user2230481它是否会抛出任何错误消息?冷冻需要多长时间?您使用这个正则表达式的输入有多大?不,它不会立即出现9个字符。请您给我写一个示例代码来验证URL是否具有指定的内容?我的似乎显然失败了。你传递给它的字符串是什么?你是否试图验证路径以php结尾,而查询以php结尾?您看过Uri.GetComponents方法了吗?