[0-9a-zA-Z.%+-] 匹配中括号中的 0-9 或者 a-z 或者 A-Z 或者 . 或者 % 或者 + 或者 -

$p = "111,222,333"
$p -match '\b\d\d\d\b'

-cmatch 匹配大小写

#通过 $matches 取返回值

'\b\d\d\d\b' = '\b[0-9][0-9][0-9]\b' = '\b\d\d\d\b'

$p = "111,222,333"
$p -match '\b\d\d\d\b'  #只会返回一个匹配项

使用 [Regex]:Matches,会将对该字符串中所有的匹配部分都返回,所以要尽量写全regex

[Regex]写法一:

$p = "111,222,333"
[regex]:Matches($p,"\b\d\d\d\b")

[Regex]写法二:

$p = "111,222,333"
$regex = [regex]"\b\d\d\d\b"
$regex.Matches($p)

返回结果如下图:

$pattern = "a*"

$pattern=[regex]'\b\d\b'

$input = "abaabb"

[regex]::matches($input,$pattern)  #返回所有匹配结果

[regex]::ismatch($input,$pattern) #返回 true or false

=========================================================

$name = "abc_2014-06-19.txt"
$name -cmatch '^abc_(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})\.txt'
$matches

$matches.year
$matches.day

$id="/cs/blogs/tips/archive/2014/06/12/be-aware-of-side-effects.aspx"
if ($id -cmatch '^/cs/blogs/tips/archive/(?<year>\d{4})/(?<month>\d{2})/(?<day>\d{2})/(?<name>.+)\.aspx$') {
$year = $matches['year']
$month = $matches['month']
$day = $matches['day']
$name = $matches['name']
}

$matches

参考:http://www.pstips.net/regex-describing-patterns.html

正则表达式_matches(Regex)的更多相关文章

  1. Boost正则表达式库regex常用search和match示例 - 编程语言 - 开发者第2241727个问答

    Boost正则表达式库regex常用search和match示例 - 编程语言 - 开发者第2241727个问答 Boost正则表达式库regex常用search和match示例 发表回复   Boo ...

  2. 用正则表达式(regex)匹配多项式(polynomial)

    因为作业的要求,我需要识别用户从命令行输入的多项式,并且要提取出其中的系数.指数以便用于后续计算. 曾经想过用一个数组把用户所有的输入全部存进来,然后在写逻辑判断.但想想那复杂的逻辑,头皮都发麻,这时 ...

  3. 正则表达式,Regex类

    C#regex是正则表达式类用于string的处理,查找匹配的字符串.1,先看一个例子Regex regex=new Regex(@”OK“)://我们要在目标字符串中找到"OK" ...

  4. python3的正则表达式(regex)

    正则表达式提供了一种紧凑的表示法,可用于表示字符串的组合,一个单独的正则表达式可以表示无限数量的字符串.常用的5种用途:分析.搜索.搜索与替代.字符串的分割.验证. (一)正则表达式语言python中 ...

  5. 正则表达式之Regex.Replace()用法

    正则表达式替换匹配到的字符串 string txt = "AAA12345678AAAA"; //匹配到的连续数字的前4位用*替换 string m =Regex.Replace( ...

  6. 正则表达式之Regex.Match()用法

    //匹配字符串中的连续数字 string txt = "AAA12345678AAAA"; string m = Regex.Match(txt, @"\d+" ...

  7. 【Unity|C#】基础篇(18)——正则表达式(Regex类)

    [学习资料] <C#图解教程>:https://www.cnblogs.com/moonache/p/7687551.html 电子书下载:https://pan.baidu.com/s/ ...

  8. 更强大的python正则表达式模块 -- regex

    python内置的正则表达库re比较弱,而且似乎在好几年里都没太大的变化. 这里介绍这个python模块regex,实现了更多方便好用的功能. 比如:\p{han} 可以匹配汉字, \p{Latin} ...

  9. 正则表达式之Regex.Matches()用法

    //提取字符串中至少连续7位的数字 string txt = "www17736123780eeeee 7377091 ddddsssss7777777"; //找到的成功匹配的集 ...

随机推荐

  1. URAL 1119. Metro(BFS)

    点我看题目 题意  : 这个人在左下角,地铁在右上角,由很多格子组成的地图,每一条边都是一条路,每一条边都是100米.还有的可以走对角线,问你从起点到终点最短是多少. 思路 : 其实我想说一下,,,, ...

  2. UVALive 3211 Now or later

    每架飞机有早晚起降两种方式,给定n架飞机两种方式的起落时间,为每架飞机安排起落时间(早或晚),使得所有飞机起降时间按照早到晚的顺序之间的间隔时间最小值尽量大. 分析: 最小时间尽量大应该采用二分的方法 ...

  3. 49. 面向对象的LotusScript(十五)之Log4Dom下

    Log4Dom是模仿Log4J的思想建立的.Log4J能够向多种记录媒介以统一的格式写入各种级别的日志信息(包括错误.调试和信息等),还可以籍配置文件在运行时方便地修改记入日志的级别.Log4Dom提 ...

  4. C#中的泛型详解

    泛型(generic)是C#语言2.0和通用语言运行时(CLR)的一个新特性.泛型为.NET框架引入了类型参数(type parameters)的概念.类型参数使得设计类和方法时,不必确定一个或多个具 ...

  5. 【Python Network】分解DNS查询结果

    针对DNS查询records,通过NS.PTR.CNAME和MX类别不同,返回数据将包含另外主机名.为了解最终的IP地址,通过将返回信息分解.继续使用PyDNS获取详细信息. #! /usr/bin/ ...

  6. hdu4669Mutiples on a circle

    http://acm.hdu.edu.cn/showproblem.php?pid=4669 这题各种错误都来了一遍  预处理一下第一个数作为尾数与相邻前面的数组成的数的余数  然后再与后面的结合求余 ...

  7. PHP 'ext/gd/gd.c'信息泄漏漏洞

    漏洞版本: PHP 5.5.x 漏洞描述: CVE ID:CVE-2014-2020 PHP是一种HTML内嵌式的语言. PHP 'ext/gd/gd.c'没有检查数据类型,允许远程攻击者使用字符串或 ...

  8. NOI2014 随机数生成器

    随机数生成器 [问题描述] 小H最近在研究随机算法.随机算法往往需要通过调用随机数生成函数(例如Pascal中的random和C/C++中的rand)来获得随机性.事实上,随机数生成函数也并不是真正的 ...

  9. c程序设计语言_习题1-16_自己编写getline()函数,接收整行字符串,并完整输出

    Revise the main routine of the longest-line program so it will correctly print the length of arbitra ...

  10. Visual Studio 2015 下载地址

    Visual Studio 2015  发行说明: https://visualstudio.com/zh-cn/news/vs2015-vs.aspx Visual Studio  2015 特性简 ...