我試圖解決與正則表達式的JavaScript這裏提到了同樣的問題:Check if string is repetition of an unknown substring檢查字符串是在JavaScript未知串的重複
我翻譯的正則表達式中first answer爲Javascript:^(.+){2,}$
但它不工作如我所料:
'SingleSingleSingle'.replace(/^(.+){2,}$/m, '$1') // returns 'e' instead of exptected 'Single'
我在忽略什麼?
由於'^'和'$'我想'^(。+){2,} $'應該匹配整個字符串。量詞的貪婪或懶惰可能可以解釋這種情況 - 但這對我來說似乎很奇怪。 但是你的解決方案是可以的。 (我誤解了Ruby的例子:我認爲它在一個替代語法中使用了一個量詞,而不是在JS中。) 謝謝! – levram