已经有专门的书籍来讲解正则表达式,所以深入讲解正则表达式超出了文本的主题。但是在这里还会举一个例子演示怎样通过正则表达式轻松的搜索字符串片段。下面的的脚本会匹配位于两个特定单词中的字串,并且字符的长度介于1到6之间。
"Find word segments from start to end" -match "\bstart\W+(?:\w+\W+){1,6}?end\b" # True $matches[0] # start to end
本文链接: https://www.pstips.net/regex-find-string-segment.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
看不明白,模式字符串,(?:w+W+)的含义啊
PowerShell正则表达式(十五)非捕获组 http://www.pstips.net/non-capturing-group.html
“Find word segments from start to end” -match “\bstart\W+(?:\w+\W+){1,6}?end\b”
# True
$matches[0]
# start to end
(?:\w+\W+) //请解释一下这个正则表达式。。 ?:
(?:pattern)
匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。
你如果把它去掉后,$Matches就多了一个匹配结果: