PythonでのSMSメッセージからのテキストの抽出

これは私がモバイルからATコマンドを使って得たSMSメッセージです:

+CMGL: 24,"REC READ","DD-655501",,"11/11/10,17:10:26+22"
hey is it working "BBC news channel" pack @ Rs.10, Dial *234*7514#

今度は、テキストメッセージのみを 抽出する必要があります。私はいくつかのアプローチを試みましたが、何かがいつも見逃されています。私はPythonを使用しています。何か良い提案?

0
どの部分がSMSメッセージですか?
追加された 著者 Dimme,
あなたは携帯電話と通信するための図書館であるガンムを調べたいかもしれません。それはPythonバインディングを持っています。 wammu.eu/gammu
追加された 著者 Thomas K,

1 答え

レスポンスの形式は次のとおりです。

+CMGL: index,message_status,address,[address_text],[service_center_time_stamp][,address_type,sms_message_body_length]
sms_message_body

ソース

最初の行からすべてのテキストを離してください。

message_body = smsText[smsText.index('\r\n') + 2:]
1
追加された
@ user1043500:それは、あなたが最初の行を忘れたからです。
追加された 著者 Mark Byers,
@ user1043500:入力文字列に \ r \ n の代わりに \ n が含まれている可能性があります。
追加された 著者 Mark Byers,
それは動作していません。 >>> smstext = "" "ねえ、BBCのニュースチャンネル" pack @ Rs.10、Dial * 234 * 7514# "" ">>> message_body = smstext [smstext.index( '\ r \ n')] + 2:] Traceback(直前の最後の呼び出し):の1行目のファイル "" message_body = smstext [smstext.index( '\ r \ n')+ 2:] ValueError:見つからない>>>
追加された 著者 user1043500,
私は間違いをしていますが、私はそれを理解することができません。
追加された 著者 user1043500,
これは私が最初の行>>> s = "" "+ CMGL:24、" REC READ "、" DD-655501 "," 11/11/10,17:10:26 + 22 BBCのニュースチャンネル "pack @ Rs.10、Dial * 234 * 7514#" "" >>> message_body = s [s.index( '\ r \ n')+ 2:]トレースバック(ほとんどの場合、最近の呼び出し最後):ファイル ""、行1、 message_body = s [s.index( '\ r \ n')+ 2:] ValueError:
追加された 著者 user1043500,