重複の可能性:
CSV で値を検索する
perl スクリプトを作成しました。äbcd を含む CSV ファイルで「abc」を検索したいとします。私が書いたスクリプトは、実際には望んでいない出力として abcd を表示します。これについて誰か助けてください。
重複の可能性:
CSV で値を検索する
perl スクリプトを作成しました。äbcd を含む CSV ファイルで「abc」を検索したいとします。私が書いたスクリプトは、実際には望んでいない出力として abcd を表示します。これについて誰か助けてください。
問題は、Unicode ファイルで ANSI 文字列を検索することです。あなたの質問に似た例を指摘するこの正規表現チュートリアルを確認することで、あなたの質問に最もよく答えることができると思います.
私はあなたがperlの正確な単語に一致する必要があると思います:
perlで以下の正規表現を使用します。
(/\b"your_word"\b/
テスト済み:
\bなし
> echo 'abcd'|perl -lne 'if(/abc/){print}'
abcd
\b付き
> echo 'abcd' | perl -lne 'if(/\babc\b/){print}'
>
> echo 'abc' | perl -lne 'if(/\babc\b/){print}'
abc
あなたのコードを見ることによってあなたはこれをしている:
(grep /$curr/, @nodes)
したがって、これを:に変更すると
機能する(grep /\b$curr\b/, @nodes)
はずです