這是可能與正則表達式嗎?正則表達式:檢測給定長度的重疊或不重疊重複模式的存在
例如,在:「tagaga」中,我想匹配「aga」,因爲它不止一次出現。
'(.{3})(.*)\1'
發現(在 「tagacaga」 匹配 「agacaga」)非重疊匹配但不重疊的匹配。
然而,以這種方式使用前瞻不爲我工作:
'(.{3})(.*)(?=\1)'
另外,如果正則表達式的解決方案並不存在,是有這樣的動態規劃的解決方案?
最終,我只關心存在,不需要匹配的字符串。如果它有任何區別,我正在MATLAB中工作。
(?=(。{3}))。+(\ 1)似乎對我在測試儀中的目的正常工作。儘管沒有任何答案可以用於MATLAB。我意識到,MATLAB無法將字符作爲標記捕獲,而無需從字符串中移除它們[(link)](http://stackoverflow.com/questions/848759/match-overlapping-patterns-with-capture-using-a-matlab -正則表達式)。除了正則表達式之外,我將不得不考慮其他選項。謝謝你的幫助。 – bravetang8