我正在研究ruby中的文本編輯器,並且需要使用用戶提供的正則表達式模式來支持「查找」功能。下面是一個簡單的(熟悉的)用例:在ruby中查找任意正則表達式的最後(最右邊)匹配
Joe用戶正在編輯一個文本文件,並將光標定位在文件中間的某處。他希望從當前光標位置向後搜索,以找到與任意正則表達式匹配的最近子字符串。
我在想,這個問題等於將用戶的模式應用到文件中游標位置前面的整個字符串。當然,我可以從文件開頭遍歷所有匹配並使用最後一場比賽,但這看起來很痛苦無效......最好是從右到左搜索,但我還沒找到辦法做這與紅寶石Regexp。你能幫我嗎?
這是對我們這些因爲我們用另一種語言沒有`rindex`誰一個有用的一般正則表達式的解決方案去。 (它也比我接受的答案看起來更清潔。) – 2012-03-07 17:46:43