这个正则表达式如何处理?

时间:2015-02-08 05:56:12

标签: regex perl

我是perl的新手(初学者,在业余时间学习perl过去1周)。这是我的第一种编程语言。

我想知道这个正则表达式[] +如何在perl中运行。我有3个问题。

  1. 这将做什么:if /[\d\s\.,:\/]+/
  2. 我学会了if /.../匹配模式。

    1. 那么它会匹配以下内容吗?

    2. 以下哪些部分不匹配?

      • 335.31,312.52
      • Dave1.532
      • 路径:“。1243/453 /48.1”
      • 543,546
    3. 编辑:

      这不是链接问题的重复,因为我具体询问[]+的工作原理。链接帖子中的答案并未涉及此问题。

      我知道上面写的正则表达式中的每个字符代表什么,以及每个字符的工作方式。我想知道的是[]+将如何影响正则表达式。具体而言+将如何影响[]

1 个答案:

答案 0 :(得分:1)

我建议您使用regex101.com来尝试正则表达式。以下是您提供的表达式的细分:

`[]` match a single character present in the list
`+` matches one or more of the above
`\d` match a digit [0-9]
`\s` match any white space character `[\r\n\t\f ]`
`\.` matches the character . literally
`,:` a single character in the list ,: literally
`\/` matches the character / literally

您将获得以下匹配项(如果您使用g - 全局选项运行) - (REGEX示例 - ref):

`335.31, 312.52 `
`1.532 `
`: `
`./1243/453 /48.1`
` 543, 546 `
相关问题