1

reddit の画像を表示するアプリがあります。http://i.imgur.com/Cuv9oau.jpgのように見せる必要がある場合、一部の画像はhttp://imgur.com/Cuv9oauのようになります。先頭に (i) を追加し、最後に (.jpg) を追加するだけです。

4

3 に答える 3

3

文字列置換を使用できます。

s = "http://imgur.com/Cuv9oau"
s = s.replace("//imgur", "//i.imgur")+(".jpg" if not s.endswith(".jpg") else "")

これにより、s が次のように設定されます。

'http://i.imgur.com/Cuv9oau.jpg'
于 2013-07-11T02:37:38.527 に答える
2

この関数は、必要なことを行う必要があります。@ jh314 の応答を拡張し、コードを少しコンパクトにして、URLが で始まっていることを確認しました。http://imgur.comそのコードは、含まれている Google 検索などの他の URL で問題を引き起こす可能性があるためです。また、最初のインスタンスのみを置き換えるため、問題が発生する可能性があります。

def fixImgurLinks(url):
    if url.lower().startswith("http://imgur.com"):
        url = url.replace("http://imgur", "http://i.imgur",1) # Only replace the first instance.
        if not url.endswith(".jpg"):
            url +=".jpg"
    return url

for u in ["http://imgur.com/Cuv9oau","http://www.google.com/search?q=http://imgur"]:
    print fixImgurLinks(u)

与えます:

>>> http://i.imgur.com/Cuv9oau.jpg
>>> http://www.google.com/search?q=http://imgur
于 2013-07-11T03:30:18.320 に答える
1

を配置するには、 Python の正規表現を使用する必要がありますi。については、追加する.jpgだけです。

于 2013-07-11T02:31:02.930 に答える