問題タブ [idiomatic-perl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - Perl で perl-isms (慣用表現) を使用する場合のベスト プラクティスは何ですか?
数年前、私は (かなり大規模で Perl を使用することが多い) 会社のベスト プラクティス/コーディング スタイルの作成に参加しました。これは、「上級」Perl 開発者の委員会によって行われました。
コンセンサスによって行われたものと同様に、誰もが同意しない部分がありました。当たり前。
最も間違っていた部分は、多くの Perlism (C++ や Java などに存在しないコード イディオムとして大まかに定義されている) を使用しないことを強く推奨することでした。コンストラクト」。
このようなルールの主な根拠は、Perl 以外の開発者が Perl コード ベースを使用するのに非常に苦労するというものでした。ここでの仮定は、Perl のコード ジョッキーは、Perl を使用していない人よりも、全体的に (そして会社の新入社員の間でも) まれな人種であるということです。
SO がこのロジックを支持または拒否する良い議論を持っているかどうか疑問に思っていました...会社の Perl コーディング標準は硬直化しており、私が知る限り二度と改訂されることはないため、現時点では主に学術的な好奇心です。
PS 明確にするために、質問は私が指摘した文脈の中にあります.Perlだけの小規模な開発ショップの答えは、明らかに「Perlを最大限に活用する」ことです。
perl - 置換演算子内からサブルーチンを呼び出すのと機能的に同等のPerlイディオムはありますか?
Perlは..を許可します
しかし、許可しない、またはむしろ私が望むことをしません...
望ましい最終結果は、正規表現が一致したものに連動した置換を実行する方法です。
私は書く必要がありますか
regex - すべての行の先頭と末尾に文字を追加する
「<」と「/>」で囲む必要があるプレーン テキストの行があります。
したがって、これを実行してから、 を に置き換えてもう一度実行できますperl -pe 's/^/</' myfile
。^
$
ファイルを2回繰り返すのではなく、1行のコードでこれを行う方法はありますか?
sed または awk でより適切に実行できますか? どのように ?