2017-07-03 1 views
2

クリップURLを引き出すツイッチボット用のプラグインを変更しようとしています。JS Regexを行の終わりまたは空白のスペースで停止するようにする

クリップURLは、単独で、またはテキストで始まり/終わりにすることができます。

私は正規表現を変更する前に、最初の使用後にプラグインが応答しなくなり、動作していたようです。

元のRegexは、URLの開始後にすべての文字列を取得しました。私は次のようにしましたが、どこかで障害が発生するようです。

some text *ClipURL* more text | *ClipURL* some text | some text *ClipURL* | *ClipURL* 

どれでも彼:
/(https:\/\/)?clips\.twitch\.tv\/([^\s]*)/

テスト文字列(複数可)を修正

  • オリジナル
    /(https:\/\/)?clips\.twitch\.tv\/(.*)/

  • あなたが私に与えることができるのは素晴らしい助けになるでしょう。

+1

'[^ \ s] *'は「\ S *」としてより簡潔に記述することができます – Will

+0

「最初の使用後に応答しない」とは、「最初の文字列 "の場合は、" g "修飾子を追加する必要があります。それがあなたが意味するものでないなら、あなたは明確にしてください。 –

+0

ダニエル - いいえ、私は文字列にURLが1つしかないと予想しています。しかし、プラグインはまだ何かを処理しようとしているようになり、クリップのURLでさらにメッセージをキャプチャしなくなります。それは私がプラグインをリロードするためにボットを再び停止/起動する必要があります – LinkOps

答えて

0

/(https://)?clips.twitch.tv/(\S*)/はあなたのために機能しませんか?これは基本的に2番目のものです。

それは正しく一致します

  • HHHH clips.twitch.tv/someone DDDD
  • clips.twitch.tv/someoneは
  • HHHのclips.twitch.tv/someoneに
  • クリップをDDDD。 twitch.tv/soneone
+0

(\ S *)は実際にプラグインを破棄し、まったく読み込めませんでした。私は関連する可能性のあるファイルにいくつかの追加情報がある場合に備えて、完全なjsファイルを次のpastebin https://pastebin.com/9z3bsGVxにアップロードしました。 http://prntscr.com/fr63hwは、今のところDiscordへの注入方法のスクリーングラブです。私は理想的には、 "まだクリッピング"が正規表現に捕まらないようにしたいので、それは "しかし、少なくとも"のテキストにとどまっています – LinkOps

+0

jsファイルは長すぎますが、チェックアウトhttps://regex101.com/r/eQzjQd/2です。期待通りにクリップルを正しく引き出します。 –

関連する問題