2017-07-28 106 views
-1

目前,我有以下的正則表達式:正則表達式解析的問題數據

(\d{7})\s(\d{2}\/\d{2}\/\d{4})\s([a-zA-Z\-\s\&\#\,\'\.\/\(\)\d]*)\s(\d+[\w\.\/\#]*)\s([a-zA-Z\/\&\s\d\*\-]*\d{0,1}\.{0,1}\d*[a-zA-Z]*)\s([a-zA-Z]*[\d+\.{0,1}\-{0,1}\d]+[a-zA-Z]*)\s(\d+)\s([a-zA-Z]*[\d+\.{0,1}\-{0,1}\d]+[a-zA-Z\s]*)\s([\(\d\,]*\.\d+[\)]*)\s([\(\d\,]*\.\d+[\)]*)\s([\(]*\${1}[\d\.\,\)]*)\s([a-zA-Z\s\$\.\d\/]*)\s([\(]*\${1}[\d\,]+\.\d{0,2}[\)]*)(\d+) 

正在解析的輸入字符串是:

6655738 03/31/2017 OTTER CREEK COUNTRY STORES, INC RICHS 72/ 2.5 OZ DONUT JUMBO RING 03853 989200 00049800038530 1.00 12.90 $21.21 $2.00 Per Unit $2.00109830 

第三組返回OTTER CREEK COUNTRY STORES, INC RICHS 72/,而我只想要OTTER CREEK COUNTRY STORES, INC RICHS

有人能告訴我在正則表達式中改變什麼來完成這項工作嗎?

+0

你使用哪種語言? (不要在沒有指定語言,工具或正則表達式引擎的情況下詢問正則表達式問題)。 –

+0

我在使用java.util.regex的工具中使用這個 – Ravi

回答

0

您的第三組是:([a-zA-Z\-\s\&\#\,\'\.\/\(\)\d]*)其中包括數字和斜線。如果你不想要這些,把它們放在組外。

但正確的解決方案取決於您的輸入字符串的格式。也許第三組有一個長度依賴性 - 那麼你的正則表達式需要有一個不同的設置。

+0

謝謝你的回覆。對長度沒有依賴性。第三組應該是我已經提到的。第四組應該是72/2.5 OZ。不知道如何得到它。 – Ravi