bit

ローマ字っぽいアルファベット表記を見つけるための正規表現

アルファベットの並びがローマ字っぽいものを見つけるための正規表現
人名がずらっと並んでいるときに、日本人名を見つけたかったので。

if (/^(\s*(((([bdghjkmnpstrz])\5?)?y?([ei]|[aou]h?))|ss?h[aiuo]|cc?h[aio]|tt?su|wa|fu|n)+){1,2}\s*$/i) {
  chomp;
  print $_, "\n";
}

gha(ぎゃ) とか wwa(っわ) とかは、ないだろと思って外しているので、意図するものが引っかからない可能性はある。逆に、Gianni とか、Hiseman とかもひっかかってしまうが、それは仕方ない。