だから私はegrepのに適していますこの正規epressionを作り、それが仕事に行ってます:sedの正規表現
egrep "(^|[ ]+)([^ ]+)([ ]+)\2([ ]+|$)" $1
私はsedのではなく、そのが動作していない何らかの理由でそれに取り組んでみました。
sed '/\(^|[ ]\+\)\([^ ]\+\)\([ ]\+\)\2\([ ]\+|$\)/!d' $1
誰かが私はそれで問題が何であるかを理解するのに役立つ可能性があり、どのように私はegrepのではなく、SEDと同様に、正規表現を使用することができ、またはバックトラックとどのようにsedの作品を説明する場合は?
sed '/\(^|[ ]\+\)\([^ ]\+\)\([ ]\+\)\2\([ ]\+|$\)/!d' "$1" # Yours.
sed '/\(^\|[ ]\+\)\([^ ]\+\)\([ ]\+\)\2\([ ]\+\|$\)/!d' "$1" # correct.
しかし、あなたはsedの中で、拡張rexexpを求めるならば、それは簡単です::
使用 '-r'(または' - E')オプションを使用して拡張正規表現フレーバを有効にします。 –
sedでは '\ |'でなければなりませんか? – melpomene