本文へスキップ

技術士試験(情報工学部門)・情報技術者試験。ファーストマクロ。


Since 2016.4.19

平成26年度 技術士第一次試験問題【専門科目】

V−7

次の2つの文字列がある。この両方を表すことができない正規表現はどれか。ただし、r* は0回以上の繰り返し、(r1|r2) は選択を表す記号とする。

  aabbbcddd
  addccee

@ a*b*c*d*c*e*

A a*b*d*c*d*e*

B a*(b|d)*c*(d|e)*

C a*(b|d|c)*(d|e)*

D a*(b*|d*|c*)(c*|d*|e*)


正解

D


解説

(b|d|c)* は bbbc や ddcc が表現可能。
(b*|d*|c*) は、bbbb や ccc が表現できるが bbbc や ddcc は表現できない。

@ a*b*c*d*c*e* は、aabbbcddd addccee を表現できる。

A a*b*d*c*d*e* は、aabbbcddd addccee を表現できる。

B a*(b|d)*c*(d | e)* は、aabbbcddd addccee を表現できる。

C a*(b|d|c)*(d|e)* は、aabbbcddd addccee を表現できる。

D 正しい。a*(b*|d*|c*)(c*|d*|e*) は、 aabbbcddd addcce となり、最後の ddde を表現できない。

V−6 目次 V−8