Rに関する質問です。正規表現で、アクセスログ中のIPアドレスなどを127.0.0.1 を取り出すのに、perl や、PHPでは、^(\d+\.\d+\.\d+\.\d+) と正規表現を記述して 変数$1 にIPアドレスを格納します。Rでも同様のことができると思うのですが、どうするといいでしょうか? データフレームに放り込む方法などがあったらありがたいです。 Rjpwiki のどこかに記述あるのだと思うのですが、すぐには見つけることができませんでした。

回答の条件
  • URL必須
  • 1人5回まで
  • 登録:
  • 終了:2011/11/01 16:35:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

ポイント100pt

R での IP アドレスを表す正規表現が知りたい、ということですよね。


R における正規表現 - RjpWiki

によると、\d が無いようなので、

^([:digit:]+\.[:digit:]+\.[:digit:]+\.[:digit:]+)

とか、

^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)

という表現になると思います。

他1件のコメントを見る
id:kaiketsu

()で囲まれた部分を、取り出して処理したいのですが、方法がわかりません。

2011/10/25 17:13:44
id:a-kuma3

回答でだした RjpWiki のページで、「用法」にある sub を使うことになると思います。

IPを抜き取る、というよりも、IPアドレス以降を空文字で置き換える感じです。

gsub("^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+).*", "\\1", ...)

2011/10/25 17:23:57

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません