1

このコマンドを使用すると、必要に応じて機能します。

grep -o -e "{{ *[-_[:alnum:]]\+"

しかし、これを使用するとエラーが発生します

grep -o -e "{{ *[_-[:alnum:]]\+"

これと同じ:

grep -o -e "{{ *[[:alnum:]-_]\+"

そしてこの他:

grep -o -e "{{ *[[:alnum:]-\_]\+"

RegExpの[]は_で開始または終了できないようです

なんで?

エラーは次のとおりです。

grep:無効な範囲の終わり

4

1 に答える 1

4

エラーはハイフンに関連しています-0-9はを意味し0123456789ます。しかし、の意味は_-[:alnum:]何ですか?最初の文字として置く-と、この特別な意味が無効になるため、最初の正規表現は期待どおりに機能します。

于 2013-01-24T22:57:52.637 に答える