Bedeutung von \ b in .Net Regular Expressions [geschlossen]


9

Microsoft hat eine raffinierte Kurzreferenzkarte für .Net Regular Expressions.

Aber es scheint \bsowohl als übereinstimmende Rücktaste als auch als übereinstimmende "An Wortgrenze" aufzulisten.

Welches ist es? Kann man \bwirklich beides? Wie können Sie genau sagen, welche Sie meinen?


1
Ich bin mir nicht sicher, warum Sie hier eine C # /. Net-Frage gestellt haben, wenn Sie 27k auf Stack Overflow haben, wo dies aktuell hingehört.
Slhck

Die Visual Studio IDE und Powershell verwenden beide .Net-Ausdrücke. Ich bin auf diese Frage im Zusammenhang mit der Verwendung der IDE gestoßen. Das Suchen und Bearbeiten von Dateien ist eher eine SuperUser-Aufgabe als ein Programmierproblem.
Abelenky

Ich verstehe, danke. Vielleicht können Sie den Kontext klären, z. B. einen Screenshot der IDE anzeigen oder den Teil der Suchdateien erläutern? Dann würde ich sagen, es ist in Ordnung, hier zu bleiben.
Slhck

Antworten:


8

\b bedeutet "Wortgrenze" außerhalb von Zeichenklassen (auch Zeichensätze genannt) und "Rücktaste" innerhalb von Zeichenklassen.

Hier bedeutet es eine Wortgrenze:

\bhello\b

Hier bedeutet es eine Rücktaste

[\b]

Siehe diese Microsoft-Referenz: Zeichen-Escapes in regulären Ausdrücken .
PERL Regex hat die gleiche Definition für \b.



@ MarkAllen: Deinen Link zu meinem Beitrag hinzugefügt. Vielen Dank.
Olivier Jacot-Descombes

Nach einer schnellen LinqPad-Prüfung \bist dies die einzige \[a-zA-Z], die sowohl für einen eigenständigen Backslash als auch für eine Zeichenklasse definiert ist, die einen anderen Übereinstimmungssatz zurückgibt.
Mark Hurd
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.