<< 2006/12/ 1 1. サーバがちょっとうるさい
2. ゴロゴロきてます
3. さりとてどうしたものか
2 1. 先読みと後読みの間
3 4 1. Creole とな
5 1. Subversion 1.4.2 と Apache 2 と Apache Runtime 1.2.7
6 1. kernel の更新もどんとこい
7 1. Pearified - 独自パッケージング& channel サーバ
8 9 10 11 1. MacOSX(Panther) は newsyslog 入ってないのね
12 1. ムンクの誕生日なのか
13 14 1. PukiWiki にケチつけたくなる気持ちは分かるけど
15 16 1. Pear の Text_Wiki のサブクラスが増えてる
17 18 19 20 1. 最近 spam がすごいな
2. ISO9660 の CD-R よりも UDF の CD-RW/DVD の方が互換性って高い?
21 1. ロイターのフィードが見にくくなった
2. COSINA が Fマウントの Zeiss を売ってたのか
22 1. goo の注目ニュースの RSS がちょこちょこずれてる
23 24 1. デジタル放送の録画って、終わるタイミングどうすんだろ?
25 1. まぁあれだ
2. M-1 2006
26 1. 正規商売 Napster 初体験
27 1. そうか geek だったのか
28 29 1. RubyグループとRubyistグループって何が違うんだ?
30 1. screen の windowlist にだけ hostname 出せないかな
31 1. 2006年の振り返り
>>
トップ «前の日記(2006-12-01) 最新 次の日記(2006-12-04)» 編集

2006-12-02 [長年日記]

_ 先読みと後読みの間

ときどきの雑記帖 リターンズ 2006年12月

連続だ。

dereference を日本語にしようとすると悩みませんか? referece は「参照」で固まっちゃってますが、dereferece を日本語の名詞で表そうとするとぴったり来るものがないと思うのですが。

自分が悩むのは正規表現の lookahead と lookbehind ですね。まぁ自分で訳してて悩むってわけじゃなくて、日本語のページを読んでいても意味が分からなくて英語の方を読んだら分かった、ということなんですが。

ちなみにサンプルを書くとこういうやつね。

先読み lookahead
RE(?=re)
RE(?!re)
後読み lookbehind
(?<=re)RE
(?<!re)RE

先読みは比較的多くの実装で使えるけど、後読みは使えないものが結構多くて困る。個人的に困ったのは Ecma262 3rd で使えなかったとき。

で、なんで悩んだかっていうと、この先と後がどうも時間軸のことを言っているように読めてしまったから。違うんですね。マッチさせたい正規表現の前方にどのような文字列がくるか、あるいはこないか、後方にどのような文字列がくるか、あるいはこないか、ということなんですな。before, after のことではないと。

たぶん前方後方って書いちゃうと後方参照(backreference)と紛らわしいから先読み後読みになったんだろうなぁ。この辺の表現てどうも日本語は弱いですな。

Tags: ことば