2017-04-19 5 views
0

文字列の最初の部分を強調表示するように正規表現を作成しようとしています(WASH HANDLING PLANTという単語を除外します)。正規表現が実行される文字列の先頭に単語を除外するための正規表現

PRODUCT CONVEYOR TAIL END GUARDING

WASH HANDLING PLANT、結果は次のとおりです。

取扱い植物産物コンベアテールエンドを守って。

誰でも正規表現を動作させる方法を教えてください。

ありがとうございます。

var re = new RegExp(/\b(?!WASH\sHANDLING\s[A-z ]{1,3})\b[-A-z0-9 ]{2,90}/); 
+0

文字列は固定形式ですか? 'if(s.slice(0,19)===" WASH HANDLING PLANT "){ console.log(s.slice(20)); } '。または、 'PLANT'を任意の単語にして' WASH HANDLING'を ''ハードコーディング ''していますか? ''/WASH\s+HANDLING\s+\w+\s*([s/S]*)/.exec(s) [1] '。 –

+0

要件を明確にしてください。正確に最初の部分は何を構成することができますか? 3つの単語の場合、 'input.replace(/ ^(\ w + \ s +){3} /、" ")'はその仕事をします。それがちょうど '' WASH HANDLING PLANT ''ならば、正規表現はさらに簡単です。 –

+1

注意、[A-z]はあなたの考えと一致しません。 '[A-Za-z]'または '[A-Z]'を '/ i'修飾子とともに使用してください。 –

答えて

0

それは文字通り、この正規表現は、次のJavaScriptの例のような機能を置き換える文字列を使用した単語を削除するには試合に

/^(WASH HANDLING PLANT)/ 

を提供します削除する必要がある言葉「WASH取り扱いPLANT」なら... 。

mystring.replace(/^(WASH HANDLING PLANT)/, ""); 

そのより精巧であれば、あなたは関係なく、これはあなたのために働く必要があります最初の三つの言葉を削除する必要があります...

/^(\w+\s){3}/ 

と再びJavaScriptで置き換え...秒1で起こっていただきました

mystring.replace(/^(\w+\s){3}/, ""); 

を説明するために、...

^は、文字列の先頭にマッチします。 ()は一致する単語または文字のグループを表します(ここでは1つのグループに一致しています)。\wは任意の単語に一致し、\sは空白に一致します。我々はこれを3回繰り返します{3}

+0

最初の交換は、「ストリングの最初の部分を除外する」要件を破る「製品コンベアテールエンドガードリング洗浄処理プラント」の最後から「洗浄処理プラント」を剥がします。 –

+0

良い点@DmitryEgorov。それを修正! –

関連する問題