私は正規表現を初めて使い始めました。どこから始めるべきかわかりません。しかし、私は仕事を達成するために1つの迅速な必要があります。ドメインのないファイルのパスを取得するRegEx
私は
http://www.domain.com/folder1/folder2/file_path.txt
を取ると、それからだけ
/folder1/folder2/file_path.txt
を取得する必要があります。
ありがとうございます!
私は正規表現を初めて使い始めました。どこから始めるべきかわかりません。しかし、私は仕事を達成するために1つの迅速な必要があります。ドメインのないファイルのパスを取得するRegEx
私は
http://www.domain.com/folder1/folder2/file_path.txt
を取ると、それからだけ
/folder1/folder2/file_path.txt
を取得する必要があります。
ありがとうございます!
からURIオブジェクトを作成し、そのプロパティの1つが必要なものになります。
VB.NETは、この質問のためのタグであるため、私はあなたがにサーバ側でアクセスを持っていると仮定しますリクエストオブジェクト:
Dim instance As HttpRequest
Dim value As String
value = instance.Path
これは、あなたが求めたものを正確に与えるはずです。
編集: - :
考え直しでは、あなたが入力の簡単な(通常の)セットを持っている場合、その場合には、正規表現のみに役立ちます...いくつかの入力文字列からURLを解析することができすべての可能なドメインを知っていますか?唯一可能なドメインは「http://www.ABC.com」と「http://www.DEF.com」ですか?そして、ここで
:
Dim text As String = "http://www.ABC.com/folder1/folder2/file.txt"
Dim pattern As String = "(?:http://www.ABC.com|http://www.DEF.com)(.*)"
Dim r As Regex = new Regex(pattern, RegexOptions.IgnoreCase)
' Match the regular expression pattern against a text string.
Dim m As Match = r.Match(text)
Dim g as Group = m.Groups(2) 'Gives the string matched by the capturing parentheses
複数のプロトコルをサポートし、あまりにプロトコルをオプションに。
((https?|ftp)://)?(.*?)/(.*)
これは、正規表現なしで行うのがはるかに簡単です。正規表現は要件ですか? –