WordPartyで発火させたい文字列と発火させたくない文字列を組み合わせたい

対象

WordParty

利用OS

Windows

利用バージョン: Windows、わんコメやOBSのバージョン

Windows: 10
わんコメ: 0.0.0

PRO版を利用

していない

過去ログ確認 (検索はこちらから)

した

ドキュメント確認 (公式サイト)

した

内容

内容をこちらに記載してください
スクリーンショットなど織り交ぜながら書いて頂けると助かります!

こちらで質問させて頂き、発火させたくない文字列だけだとうまくいっていたのですが、

発火させたい文字列1
発火させたい文字列2
^(?!.*発火させたくない文字列).*$

とやると全部発火してしまいうまくいきません。
なにかいい方法がありますでしょうか?

こんな形の記載だと、うまく動くでしょうか?

^(?=(発火させたい文字列1|発火させたい文字列2)).*(?!.*発火させたくない文字列).*$

これも正規表現のため、文字列の増やし方は以前のトピックと同じような形となります。


あとは、PRO版利用されていないとのことですので検討は必要になるかと存じますが、FANBOXでわん500以上の支援もしくはYouTubeのメンバーシップへの加入から、文字列を入れるだけのパターン一致で「発火するもの」と「発火させないもの」それぞれの入力欄実装を、わんコメへの「要望」として出すのも一つの手かもしれません。
(確実な実装をお約束するものではありません)

ありがとうございます。

発火させたい文字列と発火させたくない文字列の間になにか文字を入れるとできるようになりました。

例えば

発火させたい文字列=こんにちは
発火させたくない文字列=こんばんは

の場合、こんにちは/こんばんはと中になにか入れるとうまく発火がコントロールできますが、
こんにちはこんばんはと連続した文字だと発火がコントロールできない様です。

記述が面倒にはなりますが、こんな感じではうまく動くでしょうか。

^(?=.*発火させたい文字列$).(?!発火させたくない文字列).(?!.*発火させたくない文字列$).+$

「こんにちは」と「こんばんは」で使う例ならばこんな感じ。

^(?=.*こんにちは$).(?!こんばんは).(?!.*こんばんは$).+$

もうちょっとスマートな書き方もあるような気はしますが、一応動きそうな気はします :sweat_smile:

すみません。勘違いしていました。

まずこちらで

この場合、

「こんにちは/こんばんは」だと発火をコントロールできず、逆の「こんばんは/こんにちは」だと発火をコントロールできます。

この場合だと「こんにちはこんばんは」だと発火をコントロールできますが、逆の「こんばんはこんにちは」だと発火をコントロールできません。

どちらの文字でも発火をコントロールできる方法はありますでしょうか?

お試しいただきありがとうございます。

それでは、このような形ではいかがでしょう。

^(?=.*発火させたい文字列)(?!.*発火させたくない文字列).*$

「こんにちは」と「こんばんは」の例ではこのような形。

^(?=.*こんにちは)(?!.*こんばんは).*$

グッとシンプルになりましたが、動いているような気が……たぶん :sweat_smile:

おかしなところがありましたら、お知らせいただければと思います。

ありがとうございます。

試してみました。

こんにちは=発火
こんばんは=発火しない
こんにちはこんばんは=発火しない
こんばんはこんにちは=発火しない
こんにちは/こんばんは=発火しない
こんばんは/こんにちは=発火しない

以上になりました。

今回もお試しいただきありがとうございます。


意図していたコントロールの状況としては、例に挙げているケースでは

「こんにちは」が入っていたら発火する
「こんばんは」は発火しない
「こんにちは」が入っていようとも「こんばんは」が入っていたら発火しない

というような形で意図したとおりでしたでしょうか? :thinking:

はい、何回もテスターで試したところ自分がしたいようにできたと思います。

ありがとうございました!!