正则表达式可匹配正斜杠后跟字符串

时间:2019-04-04 16:25:36

标签: regex powershell powershell-v3.0

如果包含三个字符串,我需要过滤一个字符串:

/A/ABC
A_ABC
Downloaded

我有两种类型的线。全部包含Downloaded,但仅包含/A/ABCA_ABC

每个子字符串的左侧和右侧都有空格。

如果一行包含DownloadedABC,则匹配行的正确正则表达式是什么?

我想匹配ABC的最大问题是其斜线或下划线。

我尝试了以下表达式:

'\bDownloaded\b + \b/A/ABC\b | \/ABC\b'

但是我没有收到匹配的行。也许有人可以轻松解决我的问题。谢谢!

/A/A_仅是示例。可能有任何其他字母或多个字母。我只需要知道生产线上是否有ABC。

要清楚:我检查了几个other posts,这些问题与我的问题很接近,但是最终无法解决我的问题。

1 个答案:

答案 0 :(得分:1)

您可以使用正向查找,并断言单词Downloaded,然后将字符串中的ABC匹配

^(?=.*\bDownloaded\b).*ABC.*$

Regex demo

这将匹配:

  • ^声明字符串的开头
  • (?=.*\bDownloaded\b)肯定的lookahead,断言单词边界之间已下载了单词
  • .*ABC.*匹配任意字符0次以上,然后匹配ABC,然后匹配任意0次以上字符
  • $声明字符串结尾