人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

grep抽出の質問です。
あるテキストに、
質量:120mg
という文字列が含まれています。1日おきに数字部分が変わるので、その数字だけを抽出していきたいです。数字の範囲は0?999です
grep -o '[0-9]*'
だと他の関係ない数字も出てくるので、前後の「質量:」「mg」を使って数値を抽出する構文をお願いします。

●質問者: loveinyou1989
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:grep mg テキスト 前後 抽出
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● きゃづみぃ
●1ポイント

grep -o '質量:[0-9]*mg'

では いかがでしょうか?

◎質問者からの返答

全角文字を入れた場合に何故か何も抽出されなくなります。

というか、それ以前にそれだと抽出できたとしも数字だけになりません。


2 ● nattow
●99ポイント ベストアンサー

日本語の問題については、対象テキストの文字コードとgrepを実行している端末の入力文字コードをご確認ください。

コマンドについては、grep を二回かければ数値だけ取れそうです。

grep -o '質量:[0-9]*mg' | grep -o [0-9]*
◎質問者からの返答

頭がかたかった自分を思い知らされました。

ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ