欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PowerShell中使用正則表達式跨行匹配字符串的方法

 更新時間:2014年08月02日 09:32:24   作者:洪哥  
這篇文章主要介紹了PowerShell中使用正則表達式跨行匹配字符串的方法,重點在于正則表達式的寫法,需要的朋友可以參考下

本文介紹在PowerShell中當使用正則表達式時遇到多行字符串,如何進行跨行匹配的問題。

PowerShell中使用正則表達式來匹配搜索字符串是非常常用的一個操作。但如果遇到一個字符串有多行時,常規(guī)的正則表達式,無法正常工作。

不信請看:

復制代碼 代碼如下:

PS C:\Users\spaybow> "1111`n2222" -match "^1.*2$"
False
PS C:\Users\spaybow> "1111`n2222" -match "1.*2"
False

上面兩個返回值都是False,這很讓人想不通。如果去掉“1111`n2222”中的“`n”則上面兩句都將返回True了。
復制代碼 代碼如下:

PS C:\Users\spaybow> "11112222" -match "1.*2"
True
PS C:\Users\spaybow> "11112222" -match "^1.*2$"
True

那么,怎么樣處理這種需要跨行的正則表達式匹配呢?答案是使用(?S)選項,在正則表達式之前加上“(?s)”,可以讓正則表達式跨行匹配。
復制代碼 代碼如下:

PS C:\Users\spaybow> "1111`n2222" -match "(?s)^1.*2$"
True
PS C:\Users\spaybow> "1111`n2222" -match "(?s)1.*2"
True

關于PowerShell中正則表達式跨行匹配,本文就介紹這么多,希望對您有所幫助,謝謝!

相關文章

最新評論