正则效率,\w误区
本文首寫于公司小組內(nèi)部分享。
先前聽導(dǎo)師說過正則效率不算高,就特意去看了一點相關(guān)的,做個筆記 http://note.youdao.com/share/?id=cb801321e015542b87575b8c6d39748b&type=note http://note.youdao.com/share/?id=18d43e79ded05c812488544eff18412b&type=note
看的時候想到了先前寫過正則匹配英文郵箱,突然想到可以有中文的郵箱,遂去寫了一下,遇到個坑。 \w?匹配【字母、數(shù)字、下劃線、漢字】,這幾乎是大眾認識,但這并不準確。看下圖,俄文字符都匹配出來了,查了好些資料,發(fā)現(xiàn)\w,他匹配的是包括下劃線的任何單詞字符。類似但不等價于“[ A-Za-z0-9_ ]”,這里的"單詞"字符使用Unicode字符集,包括俄文等單詞如а。
如果想要匹配中文,英文字母,數(shù)字,下劃線(_),該怎么辦呢? 正確做法:[\u4e00-\u9fa5_a-zA-Z0-9] 附上自己寫的英文、中文郵箱匹配實錄: http://note.youdao.com/share/?id=6b2b0063b7b9963959fca3750b931baa&type=note? 或訪問 CSDN 《正則表達式匹配郵箱》。 有任何問題歡迎批評指正。
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀
先前聽導(dǎo)師說過正則效率不算高,就特意去看了一點相關(guān)的,做個筆記 http://note.youdao.com/share/?id=cb801321e015542b87575b8c6d39748b&type=note http://note.youdao.com/share/?id=18d43e79ded05c812488544eff18412b&type=note
看的時候想到了先前寫過正則匹配英文郵箱,突然想到可以有中文的郵箱,遂去寫了一下,遇到個坑。 \w?匹配【字母、數(shù)字、下劃線、漢字】,這幾乎是大眾認識,但這并不準確。看下圖,俄文字符都匹配出來了,查了好些資料,發(fā)現(xiàn)\w,他匹配的是包括下劃線的任何單詞字符。類似但不等價于“[ A-Za-z0-9_ ]”,這里的"單詞"字符使用Unicode字符集,包括俄文等單詞如а。
如果想要匹配中文,英文字母,數(shù)字,下劃線(_),該怎么辦呢? 正確做法:[\u4e00-\u9fa5_a-zA-Z0-9] 附上自己寫的英文、中文郵箱匹配實錄: http://note.youdao.com/share/?id=6b2b0063b7b9963959fca3750b931baa&type=note? 或訪問 CSDN 《正則表達式匹配郵箱》。 有任何問題歡迎批評指正。
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀
總結(jié)
- 上一篇: python核心编程-第六章-个人笔记(
- 下一篇: html5 canvas绘制圆形进度实例