麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Regex > 正文

正則表達式不區分大小寫以及解決思路的探索

2020-03-16 21:06:24
字體:
來源:轉載
供稿:網友
今天在寫一個正則表達式的時候,因為字符有大小寫的問題,多種大小寫的組合,這時想到了用正則表達式
 
 

今天遇見一個消除js正則表達式不區分大小寫的問題,網上一搜,發現自己果然是菜鳥。

在js里面//g,其中g表示全局匹配,如果沒有這個,那么就意味著只能匹配一次就會自動結束;/i/就表示在匹配的過程中不區分大小寫。呵呵。。這個在參數過濾的過程中就很有用了。
 

復制代碼代碼如下:

dxycode=dxycode.replace(/<br/s*//?>/gi,'/n')

 

都說到這個份上了,自然情不自禁的看了一下.NET中的正則表達式不區分大小寫的情況。在.NET中,RegexOption枚舉可以使用影響匹配行為的選項修改正則表達式模式。比如其中的IngoreCase就是匹配過程中忽略大小寫的限定。附上代碼如下:

Regex.Match (String, String, RegexOptions);

Regex.Replace (String, String, String, RegexOptions)

正則表達式其實是一個很有趣的事情,但是不因正而正則。下面描述一下我今天碰到的問題。

大家可能都會遇到這樣的問題,在進行ajax的傳輸后,利用javascript綁定數據的時候,經常因為注入惡意腳本、html標簽未關閉等問題導致頁面錯版和被別人腳本惡意注入。這個時候的我們想到的第一個解決辦法是:將所有標簽全部轉換成實體。這樣頁面既不會被惡意腳本注入,又不會出現錯版情況。 很好,這是一種解決途徑,畢竟菜鳥開始想問題了。但是這樣會誤殺一篇有用的html標簽,比如img,a等等。因此,第一種想法被否定了。

然后菜鳥開始尋找第二種途徑。先將問題分解,讓我們先解決惡意腳本注入的問題。這個好辦,把其中一部分惡意的腳本過濾掉。好啊,這個簡單,這個時候就用到了我上面說的正則表達式了。一路走下去,惡意腳本注入得到解決。這里先不指出菜鳥這樣做的缺點。先看下一個問題。那么怎樣防止頁面錯版的問題呢。哎呀。。。這個菜鳥可是想破了腦袋,最后的結論是用正則表達式吧為關閉標簽給照出來,要么修補未關閉標簽,要不直接刪除未關閉標簽。

再來評論菜鳥的第二種解決途徑和第三種方法。這樣做有一個共同的確定。就是你手動改變了用戶的內容,不經意的用戶還會以為你系統有問題,因為缺少很好的用戶體驗。第二,正則表達式始終是要費能的一個東東,需要不停的比對。雖然給系統的影響可能不是很大,但是能節約性能為什么不節約呢?

最終菜鳥找到了一個很好的方法,對于文本框的輸入,采用第一種方法,吧用戶的輸入內容直接轉換為實體。當然如果用戶有輸入圖片和超鏈接的需要,我們也不能不滿足。如何滿足?解決途徑如下:自定義標簽,然后再顯示的時候自定義標簽轉換。此時菜鳥才恍然大悟。

其實菜鳥也在不斷的進步的,這個問題的解決體驗了一個思想就是:特殊問題特殊處理的思想。有些東西是不能被大眾化的,那么我們就對其特殊處理吧!

最后,恭喜菜鳥走出了“因正則而正則”的誤區。同時附上正則表達式大全:

http://www.companysz.com/shouce/jiaoben/zhengze/


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久国产精品久久久久久久久久 | 91精品久久久久久久久 | 亚洲最大久久 | 午夜性久久| 九九精品在线 | 做羞羞视频 | 亚洲最大av网站 | 毛片小网站| 久草视频福利在线观看 | 91精品免费在线 | 久久久久久久久免费 | 黄网在线| 成人一区二区三区在线 | 精品国产91久久久 | 久久国产成人精品国产成人亚洲 | 精品一区二区久久久久久按摩 | 成年性羞羞视频免费观看 | 91精品观看91久久久久久国产 | 神马久久蜜桃 | 国产精品一区二av18款 | 日日鲁一鲁视频 | 成人毛片免费看 | 久久久成人999亚洲区美女 | 国产精品久久久久久久四虎电影 | 一级视频网站 | 成年片在线观看 | 亚洲国产馆 | 久久一区三区 | 99视频有精品 | 国产高潮好爽受不了了夜色 | 在线成人看片 | 激情在线视频 | 91av在线影院 | 日本高清电影在线播放 | 欧美成年性h版影视中文字幕 | 久久精品99国产国产精 | 欧美韩国一区 | 毛片免费观看视频 | 久久久精品福利 | 成人午夜在线免费观看 | 日韩美女电影 |