Ich möchte einen regulären Ausdruck, der zu einer eckigen Klammer passt [
. Ich habe noch keinen gefunden. Ich glaube, ich habe alle Möglichkeiten ausprobiert, aber nicht die richtige gefunden. Was ist eine gültige Regex dafür?
92
Wie wäre es mit einem Schrägstrich \
vor der eckigen Klammer? Normalerweise entsprechen eckige Klammern einer Zeichenklasse.
Versuchen Sie es mit
\\[
oder einfach\[
.quelle
Wenn Sie einem Ausdruck entsprechen möchten, der mit beginnt
[
und mit endet]
, verwenden Sie\[[^\]]*\]
.quelle
Entkommst du es mit
\
?Hier ist eine hilfreiche Ressource, um mit regulären Ausdrücken zu beginnen:
Regular-Expressions.info
quelle
Wenn Sie ein Zeichen benötigen, das in regulären Ausdrücken "speziell" ist, stellen Sie ihm im Allgemeinen einfach ein vor
\
. Ein wörtliches[
wäre also\[
.quelle
Wenn Sie schauen , die gleichzeitig beide Varianten der eckigen Klammern zu finden, können Sie das folgende Muster verwenden , die eine Reihe von definiert entweder das
[
Zeichen oder das]
Zeichen:/[\[\]]/
quelle
[[\]]
passt zu jeder Klammer. In einigen Regex-Dialekten (z. B. grep) können Sie den Backslash vor dem weglassen,]
wenn Sie ihn unmittelbar nach dem platzieren[
(da eine leere Zeichenklasse niemals nützlich wäre) :[][]
. Aber das funktioniert nicht in Java oder JavaScript.funktioniert es mit einem Antislash vor dem
[
?\[
oder\\[
?quelle
Wenn Sie das
[
oder das entfernen möchten]
, verwenden Sie den Ausdruck :"\\[|\\]"
.Die beiden Backslashes entweichen der eckigen Klammer und das Rohr ist ein "oder".
quelle