[pgsql-jp: 40879] Re: 正規表現での質問 E'

稲葉伸之 nobuyuki.inaba @ gmail.com
2011年 8月 3日 (水) 16:30:44 JST


すっきりしました。ありがとうございます。

2011年8月3日15:05 Takanori Yoshida <takanori @ sraoss.co.jp>:
> 吉田です。
>
>> いなばと申します。
>>
>> 正規表現をマスターしたいと思い
>>
>> インターネットで、
>>
>> http://www.postgresql.jp/document/8.4/html/functions-matching.html
>>
>> PostgreSQL 8.4.4文書
>> 第 9章関数と演算子
>>
>> を読んでいましたら、
>>
>> 例:
>>
>> regexp_replace('foobarbaz', 'b(..)', E'X\\1Y', 'g')
>>                                    fooXarYXazY
>>
>> と言うところの
>>  E'X\\1Y'
>> と言うところの 「E」が何を意味しているかわかりませんでした。
>>
>> 何度も見なおしていますが、分からないで困っています。
>>
>> すみませんがどなたか、わかる方教えていただけますか?
>
> これは、文字列内にバックスラッシュが入っているとログに WARNING を
> 出力するように PostgreSQL 8.2 で加えられた修正です。
>
> バックスラッシュが含まれる文字列がある場合は、必ず E (大文字でも
> 小文字でもいいので)で文字列を囲むエスケープ表現、と覚えておけば
> よいと思います。
>
> PostgreSQL 8.2.0 リリースノート
> http://www.postgresql.jp/document/current/html/release-8-2.html
>
>
> --
> Takanori Yoshida <takanori @ sraoss.co.jp>
> SRA OSS, Inc. Japan
>


pgsql-jp メーリングリストの案内