平成17年度 技術士第一次試験問題【専門科目】
【16】情報工学部門
W−7
次のような2つの文字列がある。
 aabbbcddd
 addccee
この両方を表す正規表現ではないものを次の中から選べ。
ただし、*は0回以上の繰り返し、|は選択を表す記号とする。

 @ 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)*(c|d|e)*
 D a*(b*|d*|c*)(c*|d*|e*)



【正解】 D

@
a*b*c*d*c*e* によって aabbbcddd が表現でき、
 a*b*c*d*
c*e* によって addccee が表現できる。
A
a*b*d*c*d*e* によって aabbbcddd が表現でき、
 a*b*d*c*
d*e* によって addccee が表現できる。
B
a*(b|d)*c*(d|e)* によって aabbbcddd が表現でき、
 
a*(b|d)*c*(d|e)* によって addccee が表現できる。
C(b|d|c)* は、 (b|d|c)(b|d|c)(b|d|c)・・・
 と等価で、 bbbc や、ddcc などの表現ができる。
D(b*|d*|c*) は、 bbb や ccc の表現ができるが
 bbbcのような表現はできない。


EXCELのマクロのご相談なら ファーストマクロ 



W−6 目次 W−8
ファーストマクロ TOPページ