我想這樣的字符串分割:飛鏢 - 分割字符串的正則表達式
x^-5 - 3
到像這樣的列表:
[x^-5, -, 3]
後的第一個減去^必須相同列表索引作爲x,因爲它只是負指數。但是,我希望其他不是任何指數的不利因素都可以在他們自己的指數上。
當通過 - 進行分割時,顯然我的x^-5也被分割爲兩個。
那麼有什麼辦法可以使用RegEx或類似的東西來實現這個嗎?
在此先感謝
我想這樣的字符串分割:飛鏢 - 分割字符串的正則表達式
x^-5 - 3
到像這樣的列表:
[x^-5, -, 3]
後的第一個減去^必須相同列表索引作爲x,因爲它只是負指數。但是,我希望其他不是任何指數的不利因素都可以在他們自己的指數上。
當通過 - 進行分割時,顯然我的x^-5也被分割爲兩個。
那麼有什麼辦法可以使用RegEx或類似的東西來實現這個嗎?
在此先感謝
如果使用allMatches
,而不是split
,你可以使用這樣的模式:
(?:\^\s*-|[^\-])+|-
-
令牌,或^-
。-
,我們可以單獨匹配它,類似於分割。一些注意事項:
您是否嘗試使用空格拆分? '.split(new RegExp(r「\ s +」))' –
對不起,我忘了提及它應該沒有空白的工作...但如果我沒有找到另一種解決方案,我會堅持空格,謝謝。 – OhMad
事實證明,在Dart中,您不能使用JS方法來捕獲子模式以使用拆分塊返回。你最好寫一個解析器或使用任何現成的庫。 –