Apa ekspresi reguler yang cocok dengan tanda kurung siku?


95

Saya ingin ekspresi reguler yang cocok dengan braket persegi [. Saya belum menemukan satu pun. Saya pikir saya mencoba semua kemungkinan, tetapi belum menemukan yang tepat. Apa regex yang valid untuk ini?

Jawaban:


111

Bagaimana kalau menggunakan garis miring terbalik \di depan braket persegi. Biasanya tanda kurung siku cocok dengan kelas karakter.


20
Jika Anda mencoba menulis regex ini di C # Anda harus menggunakan \\ di depan braket persegi.
Shrewdroid

4
Sebenarnya saya tidak tahu di mana itu bekerja dan mengapa jawabannya mendapat peringkat tinggi.
Vitali Pom

45

Coba gunakan \\[, atau sederhananya \[.


15

Jika Anda ingin mencocokkan ekspresi yang dimulai dengan [dan diakhiri dengan ], gunakan \[[^\]]*\].



6

Secara umum, saat Anda membutuhkan karakter yang "khusus" di regex, cukup awali dengan a \. Jadi literal [akan menjadi \[.


5

Jika Anda mencari untuk menemukan kedua variasi tanda kurung siku pada saat yang sama, Anda dapat menggunakan pola berikut yang mendefinisikan berbagai baik yang [tanda atau yang ]tanda:/[\[\]]/


Anda dapat menghilangkan garis miring terbalik pertama. [[\]]akan cocok dengan salah satu braket. Dalam beberapa dialek regex (misalnya grep) Anda dapat menghilangkan garis miring terbalik sebelum ]jika Anda menempatkannya segera setelah [(karena kelas karakter kosong tidak akan berguna): [][]. Tapi itu tidak berfungsi di Java atau JavaScript.
cayhorstmann

3

apakah itu bekerja dengan antislash sebelum [?

\[atau \\[?


1

Jika Anda ingin menghapus [atau ], menggunakan ekspresi: "\\[|\\]".

Kedua garis miring terbalik keluar dari braket persegi dan pipa adalah "atau".

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.