• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:正規表現で一部の語尾を否定した条件を作りたい)

正規表現で語尾の否定条件を作る方法

このQ&Aのポイント
  • 正規表現を使用して、特定の語尾を否定する条件を作りたい場合、どのように書けばよいでしょうか。
  • 具体的には、特定の文字列の後ろに特定の文字列が続く場合には条件を満たさないようにしたいと思っています。
  • 例えば、「アイウ」という文字列の後ろに「エ」や「イア」が続く場合には条件を満たさないようにしたいとき、正規表現をどのように記述すれば良いのでしょうか。

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

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

否定先読みですね pregの場合原則utf8で処理します。 <?PHP mb_internal_encoding("UTF8"); $str="アイウ"; print convAIU($str)."<br>"; $str="アイウお"; print convAIU($str)."<br>"; $str="アイウエ"; print convAIU($str)."<br>"; $str="アイウイア"; print convAIU($str)."<br>"; $str="アイウイ"; print convAIU($str)."<br>"; function convAIU($str) { $pattern="/[アァ][イィ][ウゥ](?!(エ|イア))/u";//(小文字注意) $replacement="あいう"; $str=preg_replace($pattern,$replacement,$str); return $str; }

doomdoom
質問者

お礼

ありがとうございます。 教えていただいた内容で試したところ、望みどおりの結果を出すことができました。 本当にありがとうございました!

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

?! を使ってみてはどうだろうか

doomdoom
質問者

お礼

ありがとうございます。

すると、全ての回答が全文表示されます。

関連するQ&A