正則表達式有哪些優缺點?
我覺得最大的缺點有以下幾個方面:
1.正則表達式只適合匹配文本字面,不適合匹配文本意義:像匹配url,email這種純文本的字符就很好,但比如匹配多少范圍到多少范圍的數字,如果你這個范圍很復雜的話用正則就很麻煩。或者匹配html,這個是很多人經常遇到的,寫一個復雜匹配html的正則很麻煩,不如使用針對特定意義的處理器來處理(比如寫語法分析器,dom分析器等)
2.容易引起性能問題:像.*這種貪婪匹配符號很容易造成大量的回溯,性能有時候會有上百萬倍的下降,編寫好的正則表達式要對正則引擎執行方式有很清楚的理解才可以3.正則的替換功能較差:甚至沒有基本的截取字符串或者把首字母改變大小寫的功能,這對于url重寫引擎有時候是致命的影響但是也有優點:只要熟練應用正則表達式,而且匹配的目標是純文本,那么相比于寫分析器來說,正則可以更快速的完成工作。
還有在捕獲字符串的能力,正則也可以很好的完成工作,比如截取url的域名或者其他的內容等等
上一篇為什么短信來了有播報聲音
下一篇med漸變筆刷怎么調