Ich habe eine Zeichenfolge wie:
string str = "https://abce/MyTest";
Ich möchte prüfen, ob eine bestimmte Zeichenkette mit https://
und endet mit /MyTest
.
Wie kann ich das erreichen?
Ich habe eine Zeichenfolge wie:
string str = "https://abce/MyTest";
Ich möchte prüfen, ob eine bestimmte Zeichenkette mit https://
und endet mit /MyTest
.
Wie kann ich das erreichen?
Dieser reguläre Ausdruck:
^https://.*/MyTest$
wird tun, was Sie verlangen.
^
stimmt mit dem Anfang der Zeichenkette überein.
https://
wird genau das tun.
.*
passt auf eine beliebige Anzahl von Zeichen (die *
Teil) jeglicher Art (die .
Teil). Wenn Sie sicherstellen wollen, dass mindestens ein Zeichen in der Mitte steht, verwenden Sie .+
stattdessen.
/MyTest
entspricht genau dem.
$
stimmt mit dem Ende der Zeichenkette überein.
Um die Übereinstimmung zu überprüfen, verwenden Sie:
Regex.IsMatch(str, @"^https://.*/MyTest$");
Weitere Informationen auf dem MSDN Regex Seite.
Versuchen Sie das Folgende:
var str = "https://abce/MyTest";
var match = Regex.IsMatch(str, "^https://.+/MyTest$");
En ^
Bezeichner auf den Anfang der Zeichenkette, während der $
Bezeichner mit dem Ende der Zeichenkette übereinstimmt. Die .+
bit bedeutet einfach eine beliebige Folge von Zeichen (außer einer Nullfolge).
Sie müssen die System.Text.RegularExpressions
Namespace zu verwenden.
Ich möchte prüfen, ob die bestimmte Zeichenfolge mit "https://" beginnt und mit "/MyTest" endet.
Nun, Sie könnte verwenden Sie dafür Regex. Aber es ist klarer (und wahrscheinlich schneller), einfach sagen, was Sie meinen :
str.StartsWith("https://") && str.EndsWith("/MyTest")
Sie müssen sich dann keine Gedanken darüber machen, ob eines der Zeichen in Ihren Übereinstimmungszeichenfolgen in der Regex mit einem Escapezeichen versehen werden muss. (In diesem Beispiel ist das nicht der Fall.)
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.