[解決済み] Pythonで文字列中のエスケープシーケンスを処理する
2022-06-18 16:09:16
質問
ファイルやユーザから入力を受ける際、エスケープシーケンスが含まれた文字列を受け取ることがあります。エスケープシーケンスを処理したいのですが を、Pythonが文字列リテラル内のエスケープシーケンスを処理するのと同じ方法で処理したいのです。 .
例えば、次のようにします。
myString
は次のように定義されます。
>>> myString = "spam\\neggs"
>>> print(myString)
spam\neggs
関数(ここでは
process
と呼ぶことにします)が欲しいです。
>>> print(process(myString))
spam
eggs
この関数がPythonのすべてのエスケープシーケンスを処理できることが重要です(上のリンクの表に記載)。
Pythonにこれを行うための関数はありますか?
どのように解決するのですか?
正しいのは、「string-escape」コードを使って文字列をデコードすることです。
>>> myString = "spam\\neggs"
>>> decoded_string = bytes(myString, "utf-8").decode("unicode_escape") # python3
>>> decoded_string = myString.decode('string_escape') # python2
>>> print(decoded_string)
spam
eggs
ASTやevalは使わないでください。文字列コーデックを使う方がよっぽど安全です。
関連
-
PythonによるLeNetネットワークモデルの学習と予測
-
[解決済み】 'numpy.float64' オブジェクトは反復可能ではない
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] バイトを文字列に変換する
-
[解決済み] Pythonで文字列の部分文字列を取得するにはどうすればよいですか?
-
[解決済み] モジュールの関数名(文字列)を使って、モジュールの関数を呼び出す。
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
python implement mysql add delete check change サンプルコード
-
Python 可視化 big_screen ライブラリ サンプル 詳細
-
Python interpreted model libraryによる機械学習モデル出力の可視化 Shap
-
Pythonの@decoratorsについてまとめてみました。
-
Python 入出力と高次代入の基礎知識
-
[解決済み】socket.error: [Errno 48] アドレスはすでに使用中です。
-
[解決済み】 NameError: グローバル名 'xrange' は Python 3 で定義されていません。
-
[解決済み] 'int'オブジェクトに'__getitem__'属性がない。
-
[解決済み】 TypeError: += でサポートされていないオペランド型: 'int' および 'list' です。
-
[解決済み】Flaskのテンプレートが見つからない【重複あり