-1

申し訳ありませんが、これは繰り返しの質問のように思えるかもしれませんが、本当に助けが必要です

したがって、次の形式の行を含むテキスト ファイルがあります。

Thu Apr 28 20:51:37 +0000 2011 :: Melanie Caldwell :: judeyqwaller :: Hong Kong :: P000352670 - 東芝サテライト 5205 シリーズ タッチパッド: 東芝サテライト 5205 シリーズ タッチパッド - P000352670COMPATIB... http://t.co/ QU5jA6U5

:: Hong Kong::ie などの後に始まる行の部分だけを引き出す必要がありますP000352670...

正規表現を使用してこれを行うにはどうすればよいですか?

4

3 に答える 3

3

これを試して:

res = ' :: '.join(row.split(' :: ')[4:])
于 2012-07-13T07:19:48.417 に答える
1

これには正規表現は必要ありません。かなり単純です。次のようにすることができます。

x = string.split("::")[-1]

文字列がテキスト行の場合

新しい質問を編集します(python 2.5+を使用していると仮定します):

string = "682698_62876_26861"
print string.rpartition('_')[0]

これにより、必要なものが正確に出力されます。

682698_62876
于 2012-07-13T07:24:53.980 に答える
1
>>> row = "Thu Apr 28 20:51:37 +0000 2011 :: Melanie Caldwell :: judeyqwaller :: Hong Kong :: P000352670 - Toshiba Satellite 5205 Series TouchPad: Toshiba Satellite 5205 Series TouchPad - P000352670COMPATIB... http://t.co/QU5jA6U5"
>>> row.rpartition('::')[2]
' P000352670 - Toshiba Satellite 5205 Series TouchPad: Toshiba Satellite 5205 Series TouchPad - P000352670COMPATIB... http://t.co/QU5jA6U5'
于 2012-07-13T07:29:03.307 に答える