スペースが続く数字を見つけるための正規表現(またはその他の方法)

スペースが続く数字を見つけるための正規表現(またはその他の方法)

私は以下を実行しています

awk '$2 ~ /^[0-9]\s+/ {print($2)}' file >> file1

数字の後にスペースが続く行のみを選択するようにこれを修正する方法がわかりませんか?

答え1

パターンはフィールド 2 でスペースを探しているため一致しませんが、フィールドはスペースで区切られているため、これらの文字はフィールド内に存在することはできません。

フィールド2に数字のみを入れたい場合は、これを使うことができます。

$2 ~ /^[[:digit:]]+$/

後ろにスペースがあることを保証したい場合は、フィールド3がゼロでないことを確認します。

$2 ~ /^[[:digit:]]+$/ && $3 > ""

関連情報