C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#で正規表現を使用してURLを検証するにはどうすればよいですか?


検証するには、プロトコルを確認する必要があります。

http
https

それでは、.com、.in、.orgなどを確認する必要があります。

これには、次の正規表現を使用します-

(http|http(s)?://)?([\w-]+\.)+[\w-]+[.com|.in|.org]+(\[\?%&=]*)?

以下はコードです-

using System;
using System.Text.RegularExpressions;
namespace RegExApplication {
   class Program {
      private static void showMatch(string text, string expr) {
         Console.WriteLine("The Expression: " + expr);
         MatchCollection mc = Regex.Matches(text, expr);
         foreach (Match m in mc) {
            Console.WriteLine(m);
         }
      }
      static void Main(string[] args) {
         string str = "https://example.com";
         Console.WriteLine("Matching URL...");
         showMatch(str, @"^(http|http(s)?://)?([\w-]+\.)+[\w-]+[.com|.in|.org]+(\[\?%&=]*)?");
         Console.ReadKey();
      }
   }
}

出力

Matching URL...
The Expression: ^(http|http(s)?://)?([\w-]+\.)+[\w-]+[.com|.in|.org]+(\[\?%&=]*)?
https://example.com

  1. 正規表現を使用してPythonで単語以外の文字を照合するにはどうすればよいですか?

    以下のコードは、指定された文字列の単語以外のすべての文字と一致し、それらのリストを出力します。 例 import re s = 'ab5z8d*$&Y@' regx = re.compile('\W') result = regx.findall(s) print result 出力 これにより出力が得られます ['*', '$', '&', '@']

  2. 正規表現を使用してPythonで単語を照合するにはどうすればよいですか?

    次のコードは、指定された文字列の「meeting」という単語と一致します。 前向きな先読みアサーションと後ろ向きアサーションを使用して、囲んでいる文字を尊重しますが、一致には含めません。 例 import re s = """https://www.google.com/meeting_agenda_minutes.html""" result = re.findall(r'(?<=[\W_])meeting(?=[\W_])', s) print result 出力 ['meeting']