• ベストアンサー

「何とかで始まり、何とかで終わる」正規表現は?

例えば、kitaという文字列で始まりminamiという文字列で終わる部分を検索したい場合、どのような正規表現になるのでしょうか? 例えば、"kitahigasinisiminami"という文字列を"kfjdasudkitahigasinisiminamijuhjlkjndf"の中から検索したい場合なのですが。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • akamanbo
  • ベストアンサー率17% (462/2680)
回答No.4

kita.*?minami   ↑これで最短一致になると思います。 処理系にもよりますが、一般的には、最短一致でないと、 kitahigasinisiminamihigasiminami のような場合に、後ろの「minami」までの範囲がヒットします。 どちらを使うかは状況次第でしょう。

netw2009
質問者

お礼

皆さん、回答ありがとうございます。 >最短一致 例えば、文字列中にkita.*minamiが複数あって、すべて検索したい場合(例えば、もう一つ処理を加えて文字列をすべて置換したいなど)は、どのように書けばよいのでしょうか?

その他の回答 (3)

  • aleister
  • ベストアンサー率31% (11/35)
回答No.3

.は任意の1文字 *は*の直前の文字が無い、もしくは直前の文字が1個以上連続する という意味なので kita.*minami で検索できます。 下記URLも参考にしてください。

参考URL:
http://www.mnet.ne.jp/~nakama/
  • dezimac
  • ベストアンサー率56% (2365/4208)
回答No.2

「kita.*minami」 「.」任意の一文字(改行以外) 「*」直前の文字を0回以上繰り替えず

  • qualheart
  • ベストアンサー率41% (1451/3486)
回答No.1

正規表現の書き方は言語によって異なると思いますが・・・ 一般的なUNIXベースの正規表現で言うなら kita.*minami で良いと思います。 「.」(任意の人文字)が「*」(0個以上)です。