奇妙な正規表現の問題が発生しています....置換を行っているドキュメントがあります...例として、「DEXX」を「DEXX/AREX」に置き換えてから、次の置換で置き換えたい.. . 「AREX」と「AREX/CUBE」
DEXX と AREX は次のようにハッシュに格納されます.... "DEXX" => "AREX", "AREX" => "CUBE"
私が持っている正規表現はこれです.....
foreach (keys %hashstore){
$doc=~s!\b($_)\b!$1/$hashstore{$_}!ig;
}
何が起こっているかというと、「DEXX」が「DEXX/AREX」に置き換えられているということですが、「DEXX/AREX」が検出されると、正規表現は「DEXX/AREX」を「DEXX/AREX/CUBE」に置き換えます。 「DEXX/AREX」のような別の組み合わせの一部としてではなく、独立した単語として検出された場合は「AREX」
「/」を単語境界として検出するようです。誰かがこれに遭遇したか、それに関する修正を知っていますか? どうもありがとう!エイミー