首先讓我說,我徹底解決了這個問題的所有其他解決方案,儘管他們非常相似,但是沒有一個能夠完全解決我的問題。Tokenize除引號內的分隔符外的字符串
我需要一個使用boost正則表達式提取除引號之外的所有令牌(對於引用的引用)。
我想我需要使用正則表達式是:
sregex pattern = sregex::compile("\"(?P<token>[^\"]*)\"|(?P<token>\\S+)");
,但我得到的錯誤:
命名標誌已經存在
張貼C中的解決方案#似乎使用重複的名稱標記,因爲它是另一個OR表達式。
Regular Expression to split on spaces unless in quotes
這似乎並不工作,我得到一個「無法識別的擴展名」錯誤與使用boost :: xpressive中即使命名商標是正則表達式字符串不同。必須與外部組語法有關。編輯:我的提升是1.47這是最新的,據我所知 –
你有沒有嘗試與編號組? ' 「(|?\」([^ \ 「] *)\」 |(\\ S +))「' –