Powiedz, że to bardzo łatwe, jeśli chcę znaleźć coś zawierającego małe litery i cyfry
produce_text | grep -E '[0-9a-z]'
Wsporniki są przydatne do dopasowania zestawu znaków, ale co z tymi, które są nieco wyjątkowe?
Jeśli chcę, za pomocą wsporników, dopasować dowolną postać , ale jeden z nich: nawias zamykający ]
, myślnik (myślnik) lub „-”, zarówno ukośniki /
i \
, do daszka ^
, dwukropka :
.
Czy będzie to wyglądać tak (wiem, że to nie działa)?
[^] - / \ ^:]
źródło
awk
implementacjachperl
.[^-]]
(ten zawodzi)?^
jest po]
więc[^-]]
nie będzie działać nawet wtedy, gdy oba^
i]
potraktowano dosłownie (tak jak[b-a]
). W każdym razie, jeśli chcesz dopasować od np.;
Do nawiasu zamykającego, możesz użyć zakresu do znaku przed]
(który jest odwrotnym ukośnikiem) i uwzględnić]
jako pierwszy znak w wyrażeniu nawiasu, np[];-\\]
.[[.^.]-[.-.]]
? Mam wrażenie, że to zadziała. Załóżmy, że kod ASCII^
jest wcześniejszy-
.[^[.].][.-.]/\^:]
O dziwo, musisz mieć kilka postaci w określonych miejscach. Musisz mieć
]
jako pierwszy znak w zestawie i-
musi być ostatnim znakiem w zestawie.Oto RE, który spełnia twoje wymagania
[^]\^/-]
:źródło
[
postać tam nie należy; OP nie chce tego wykluczyć.