午前問99
ワイルドカードに関する次の記述中のa,bに入れる字句の適切な組合せはどれか。
任意の1文字を表す"?"と,長さゼロ以上の任意の文字列を表す"*"を使った文字列の検索について考える。aでは,"データ"を含む全ての文字列が該当する。また,bでは,"データ"で終わる全ての文字列が該当する。
任意の1文字を表す"?"と,長さゼロ以上の任意の文字列を表す"*"を使った文字列の検索について考える。aでは,"データ"を含む全ての文字列が該当する。また,bでは,"データ"で終わる全ての文字列が該当する。

『情報処理過去問.com』からiPhoneアプリがリリースされました!!
正解
- エ
解説
aは「データ」を含む全ての文字列に一致させたいので、前後を長さゼロ以上の任意の文字列を表す*で挟んだ*データ*とします。これなら「データ」「データベース」「電子データ」「旧データファイル」など、「データ」を含む文字列すべてに一致します。なお、?データ*は先頭が任意の1文字で、その後に「データ」が続く形だけを許すため、「旧データファイル」には合いますが、「データ」「データベース」「電子データ」には合いません。
bは「データ」で終わる全ての文字列に一致させたいので、前にのみ*を付けた*データとします。これにより「データ」「電子データ」「新データ」など、末尾が「データ」の文字列に一致します。なお、?データは直前が任意の1文字だけの形を表すため、「新データ」には合いますが、「データ」「電子データ」には合いません。
以上より、a=*データ*、b=*データとなり、正解はエです。
bは「データ」で終わる全ての文字列に一致させたいので、前にのみ*を付けた*データとします。これにより「データ」「電子データ」「新データ」など、末尾が「データ」の文字列に一致します。なお、?データは直前が任意の1文字だけの形を表すため、「新データ」には合いますが、「データ」「電子データ」には合いません。
以上より、a=*データ*、b=*データとなり、正解はエです。