0

問題は、特殊文字に基づいてデータをトークン化できないと同時に、スペースに基づいてデータをトークンにトークン化する必要があることです。私はそれが何の文字列文字列内の特殊文字を考慮する正規表現

1-CHECK ON BLOCKS BELOW IF MARKET CORRECTION ARE LOADED: PCORP:BLOCK=ANCTRLG&V5PTCLG; AF55722 BRTBMWA-3289 (AF55722) in block ANCTRLG (Product ID: CAAZ 107 4493 R1A10) AF55736 BRTBMWA-3290 (AF55726)in block V5PTCLG (Product ID: CAAZ 107 4260 R2A08) IF MARKET CORRECTIONS ARE LOADED THEN V5 INTERFACE PROPERTY MUST BE DEFINED AS FOLLOW : MUXFIM : ACC-OFF (Accelerate Alligment is not active) WLL : ACC-ON (Accelerate Alligment is active) : EXAPC:V5ID=v5id,PROP=ACC-OFF; 

を処理する際に今私が持っている正規表現は、それはまた、特別に基づいてデータをトークン化と同時に、スペースに基づいて、文字列をトークン化これにより

 (\w*[-*#+=;:\/,~_ ]*\w+) 

されています文字のような

   : EXAPC:V5ID=v5id is tokenized to : EXAPC, :V5ID and =v5id rather want it to split as : and EXAPC:V5ID=v5id 

私はこの任意のアイデアを避けるために、この任意の助けに感謝します。

+0

'\ w'の前で' + 'の前に '' paren' 'を使用してください。 – dandavis

+0

あなたはそれを投げたいキャラクターにマッチするように、*。 – grail

+0

文字クラス '' - *#+ =;:\ \、〜_ \ w] +' – Toto

答えて

1

あなたの正規表現は「オプションの単語、次に特殊文字のリスト、そして別の単語」と一致します。あなたが2つの単語を持っている場合、最初の単語の前に特殊文字を持つオプションはありません。 あなたが探しているのは([-*#+=;:\/,~_ \w]+)です。

+0

私は提供された正規表現を試しましたが、それは私の要件を満たしていません。私はそれに応じて要件を更新しました。それを調べてください。 –

+0

単にスペースを削除し、 '([ - *#+ =;:\ /、〜_ \ w] +)'を残してください。 – Hetzroni

関連する問題