4 Stimmen

Wie kann man prüfen, ob eine Zeichenkette mit bestimmten Zeichenfolgen beginnt und endet?

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?

17voto

R. Martinho Fernandes Punkte 217895

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.

9voto

Noldorin Punkte 138548

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.

4voto

bobince Punkte 512550

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.)

2voto

In .NET:

^https://.*/MyTest$

1voto

Adam Neal Punkte 2117

Pruebe Expresso gut geeignet, um .NET-Regexe zu erstellen und Ihnen gleichzeitig die Syntax beizubringen.

CodeJaeger.com

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.

Powered by:

X