我所有的字符串刪除與正則表達式使用gsub,有沒有更短的方式? string.gsub(/\A.*\//,'')
在Ruby中是否存在正則表達式刪除?
11
A
回答
5
一種方法是添加自己的短方法:
class String
def del(regexp)
gsub(regexp,'')
end
def del!(regexp)
gsub!(regexp,'')
end
end
通常這些代碼會去的lib /目錄下,例如LIB /串extensions.rb中
單挑有些程序員真的不喜歡這個,因爲它是猴子補丁。我個人喜歡它的項目,因爲它使代碼更容易理解 - 一旦我有「del」方法,我可以很快看到,它的調用只是刪除正則表達式。
+0
+1,但我很驚訝沒有人投這個票。 – 2012-04-02 21:16:59
3
我不這麼認爲。
String :: delete刪除字符,並且與正則表達式不匹配,這是一種完全不同的方法。
我可以想到讓你的那條線「更短」的唯一方法是使用string.gsub!(/\A.*\//,'')
(注意那裏的爆炸)。
這是要走的路,我覺得:)
+0
@Vache哈哈,對。糾正它:P – Castilho 2012-03-31 22:38:17
5
您可以改爲指定要字符串的一部分保持。 。 。
string[/[^\/]*$/]
相關問題
- 1. Ruby正則表達式刪除空間
- 2. 刪除在正則表達式
- 3. 刪除。*正則表達式打破正則表達式
- 4. Python的正則表達式刪除Word用正則表達式
- 5. 正則表達式表達在java中刪除CSV
- 6. 在正則表達式中是否存在(!)運算符?
- 7. 正則表達式在Ruby中
- 8. 在ruby中處理正則表達式
- 9. 正則表達式在Ruby中
- 10. 在SOLR中刪除空格的正則表達式是什麼
- 11. 正則表達式刪除除
- 12. 正則表達式刪除線的端回車如果存在
- 13. 正則表達式分組串是否存在與否
- 14. 正則表達式在Ruby on Rails中替換表達式
- 15. Ruby的正則表達式
- 16. ruby正則表達式
- 17. ruby正則表達式.scan
- 18. 正則表達式ruby
- 19. Ruby正則表達式:刪除名字,留下姓氏
- 20. 正則表達式來刪除撇號
- 21. 正則表達式來刪除序號
- 22. powershell正則表達式刪除數字
- 23. 正則表達式來刪除[]和
- 24. 刪除正則表達式匹配
- 25. 正則表達式刪除空格
- 26. 刪除後綴的正則表達式
- 27. 正則表達式刪除連字符
- 28. php正則表達式刪除HTML
- 29. 正則表達式刪除鏈接
- 30. 正則表達式:刪除白字
這三個角色真的找你了嗎? – 2012-03-31 21:50:28
大聲笑似乎正在做很多字符串刪除。但通過gsub做,似乎我做錯了。它應該通過string.delete來完成,不是嗎? – 2012-03-31 21:54:35
string.delete只需要刪除哪些字符,而不是正則表達式。 string.slice!可以用來刪除基於正則表達式的字符串的一部分,但是比gsub更長... – Pafjo 2012-03-31 22:02:15