[解決済み] 文字列リテラルの前に "r "を付けるとどういう意味になりますか?重複
質問
のメソッド引数として、複数行にまたがる正規表現を構築する際に使用されているのを初めて目にしました。
re.compile()
と仮定しました。
r
はRegExの略です。
例えば
regex = re.compile(
r'^[A-Z]'
r'[A-Z0-9-]'
r'[A-Z]$', re.IGNORECASE
)
では
r
この場合、どのような意味があるのでしょうか?なぜそれが必要なのでしょうか?
どのように解決するのですか?
その
r
は、その文字列が生の文字列として扱われることを意味し、すべてのエスケープコードが無視されることを意味します。
例として
'\n'
は改行文字として扱われ、一方
r'\n'
は文字として扱われます。
\
に続いて
n
.
を実行すると
'r'
または'R'
の接頭辞がある場合。 バックスラッシュに続く文字は は,そのまま文字列に含まれる。 であり、すべてのバックスラッシュは という文字列があります。例えば、文字列 リテラルr"\n"
は2つの 文字、すなわちバックスラッシュと 小文字'n'
. 文字列の引用符は をバックスラッシュでエスケープしますが、バックスラッシュは バックスラッシュは文字列の中に残ります。 の例です。r"\""
は有効な文字列 2つの文字からなるリテラルです。 バックスラッシュとダブルクォートの2つの文字で構成されています。r"\"
は有効な文字列リテラルではありません(たとえ 生文字列は奇数で終わることはできません。 のバックスラッシュ)。具体的には、生の の文字列は、1つの バックスラッシュ(バックスラッシュは は次の引用文字をエスケープする)。 また,シングルバックスラッシュ と改行が続くと この2つの文字が の文字列を、行の続きとしてではなく、文字列として扱います。
関連
-
[解決済み】ilocが「IndexError: single positional indexer is out-of-bounds」を出す。
-
[解決済み】 NameError: グローバル名 'xrange' は Python 3 で定義されていません。
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] 最小限の驚き」と「変更可能なデフォルトの引数
-
[解決済み] パラメータに**(ダブルスター/アスタリスク)、*(スター/アスタリスク)がありますが、これはどういう意味ですか?
-
[解決済み] なぜ ++[[]][+[] +[+[]] は "10" という文字列を返すのでしょうか?
-
[解決済み] C言語における「static」の意味とは?
-
[解決済み】if __name__ == "__main__": は何をするのでしょうか?
最新
-
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によるExcelファイルの一括操作の説明
-
Pythonの@decoratorsについてまとめてみました。
-
FacebookオープンソースワンストップサービスpythonのタイミングツールKats詳細
-
[解決済み】ImportError: sklearn.cross_validation という名前のモジュールがない。
-
[解決済み] データ型が理解できない
-
[解決済み】TypeErrorを取得しました。エントリを持つ子テーブルの後に親テーブルを追加しようとすると、 __init__() missing 1 required positional argument: 'on_delete'
-
[解決済み] TypeError: 'DataFrame' オブジェクトは呼び出し可能ではない
-
[解決済み】 'numpy.float64' オブジェクトは反復可能ではない
-
[解決済み】文字列フラグ "u "と "r "は一体何をするのでしょうか、そして生の文字列リテラルとは何でしょうか?
-
[解決済み】PythonでWindowsのパスが使えるようになりました。