PythonでURLのプロトコル(http://,https://)を消す方法
こんにちは。
最近はPythonを使ってツイートの分析をしています。
具体的にはクラスタリングやtf-idfなどの手法を使って、クラスタリングした後に
そのクラスターの特徴語を抜き出すということをやっています。
tf-idfの結果を見ると、
ところどころhttpやコロン、スラッシュという文字があったので、
形態素解析前の処理として、プロトコルを消す処理を書きました。
#! /usr/bin/python # coding: UTF-8 import re text ="https://twitter.com, facebook:http://facebook.com/control/event" while re.search(r'(https?://[a-zA-Z0-9.-]*)', text): match = re.search(r'(https?://[a-zA-Z0-9.-]*)', text) if match: replace = match.group(1).split('://') text = text.replace(match.group(1), replace[1])
reモジュールのsearchで正規表現で対象の文字列を探して、
文字列のreplaceでテキストを置換しています。
うまい方法を使えば一発でreを使っていけそうな気がするんですが、
やり方が分からなかったので、この方法でやりました。
Pythonの文字列置換には三種類ほどやり方があって、
このURLに各方法の速度について載っていたので、紹介しておきます。
http://sucrose.hatenablog.com/entry/2013/01/10/193205