私は python が初めてで、特定の文字列で見つかる可能性のあるすべての形式の URL に一致するより良い解決策があるかどうか疑問に思っていました。グーグルで検索すると、ドメインを抽出したり、リンクに置き換えたりするソリューションがたくさんあるようですが、文字列からそれらを削除/削除するソリューションはありません。参考までに、以下にいくつかの例を挙げました。ありがとう!
str = 'this is some text that will have one form or the other url embeded, most will have valid URLs while there are cases where they can be bad. for eg, http://www.google.com and http://www.google.co.uk and www.domain.co.uk and etc.'
URLless_string = re.sub(r'(?i)\b((?:https?://|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|
(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))', '', thestring)
print '==' + URLless_string + '=='
エラーログ:
C:\Python27>python test.py
File "test.py", line 7
SyntaxError: Non-ASCII character '\xab' in file test.py on line 7, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details