Archives | Tumblr | Facebook | bullet-feed.pngRSS

xkcd: Regex Golf - 正規表現ゴルフ

  • このカテゴリでは、世界で最も人気があるウェブコミック「xkcd」の最新ナンバーをひたすら日本語に翻訳しています。
  • 2014年の翻訳記事はxkcd(2014年)、2013年の翻訳記事はxkcd(2013年)から。更に過去の翻訳記事はxkcdからどうぞ。
  • 翻訳済みの秀逸なコミックについては、過去のベスト10をまとめた記事(2009年?2010年2011年2012年2013年)からどうぞ。
  • このXKCD翻訳の目的の一つは、僕の英語スキル向上です。誤訳がありましたら、コメントなどで気軽にご指摘下さい。

regex_golf.png
©xkcd.com Creative Commons Attribution-NonCommercial 2.5 License

Regex golf(正規表現ゴルフ)

Regex golf:
 (正規表現ゴルフ:)
女: You try to match one group but not the other.
 (あなたは、その他ではない、1つのグループにマッチしようとしてるのね。)
女: /m | [tn]|b/ matches Star Wars subtitles but not Star Trek.
 (「/m | [tn]|b/」は、スタートレックとはマッチせず、スターウォーズの副題にマッチするわ。)
男: Cool.
 (いいね。)

Meta-regex golf:
 (メタ正規表現ゴルフ:)
女: So I wrote a program that plays regex golf with arbitrary lists...
 (だから、適当なリストで、正規表現ゴルフするプログラムを書いたのよ...)
男: Uh oh...
 (うむ、おぉ...)

Meta-meta-regex golf:
 (メタ・メタ正規表現ゴルフ:)
女: ...But I lost my code, so I'm grepping for files that look like regex golf solvers.
 (...でも、コードが分からなくなったから、正規表現ゴルフ解法みたいなファイルの為に、grepをしているのよ。)

...And beyond:
 (...そして、更にその上:)
女: Really, this is all /(meta-)*regex golf/.
 (実際、これはすべて「/(meta-)*regex golf/」よ。)
男: Now you have infinite problems.
 (今、無限の問題を抱えてるな。)
女: No, I had those already.
 (いいえ、既にあったものよ。)

Alt-text: /bu|[rn]t|[coy]e|[mtg]a|j|iso|n[hl]|[ae]d|lev|sh|[lnd]i|[po]o|ls/ matches the last names of elected US presidents but not their opponents.
 (「/bu|[rn]t|[coy]e|[mtg]a|j|iso|n[hl]|[ae]d|lev|sh|[lnd]i|[po]o|ls/」は、野党ではない、アメリカ大統領当選者のラストネームにマッチする。)

補足

 正規表現ゴルフとは、コードゴルフのように、特定の条件に当てはまる正規表現を出来る限り短いバイト数で表そうと言う試み。

 しかし、複雑な正規表現を考えるあまり、逆に問題を多く抱える事になる。

 最後のコマは、プログラマーでよく言われる格言『Some people, when confronted with a problem, think "I know, I'll use regular expressions." Now they have two problems.(何人かは、問題に直面した時、「そうだ、正規表現を使うよ」と考え、今や、2つの問題を抱える事となった。』に引っ掛けている。

このエントリーをはてなブックマークに追加

関連性が高いおすすめ記事


comments powered by Disqus