タイトルに特定文字列hogeが含まれている場合のみ、タイトルを[これはテストです]hogefugaにする
以下のGnewsを再度送信しましょうネタにちょっと関連するんだけど、このGnewsをなぜ先に復旧させたかというと、これは周囲の人間数人に配信していたからなんです。迷惑の範囲が広い。
で、今回はまぁまだ仮復帰ということも有り、「本番じゃないから動作は保証しません」的なせりふをどっかにいれておきたいなと思ったわけです。
まず、最初の部分。「タイトルに特定文字列hogeが含まれている場合」を判定するには
rule: expression: $args->{feed}->{title}=~ m/hoge/
とすればよい。完全一致なら eqなのかな?これを使えば同じyaml内で複数の組み合わせの配信先に配信できる。
で、「タイトルを[これはテストです]hogeにする」は文字列置換で
rule: expression: $args->{feed}->{title}=~ s/hoge/[これはテストです] hoge/g
ここまでは知ってる。で、じゃあ条件が二つあって「タイトルに特定文字列hogeが含まれている場合のみ、タイトルを[これはテストです]hogeにする」のはどうするの?というのが今日のお勉強。きっとifとか使うんだろうなぁ…と思ったら、やっぱりそうでした。
expression: $args->{feed}->{title}=~ m/hoge/ if ($args->{feed}->{title}=~ s/hoge/[TEST] hoge/g);
で了。きっともっと綺麗な解決もあるのだろうけど。