在C ++中使用正则表达式排除子文件夹

leochou0729

我想使用正则表达式来匹配macOS上的此文件路径:

/Users/username/Library/Containers/com.tencent.xinWeChat/...

此路径中有许多子文件夹级别,但是我想排除此特定路径。

/Users/username/Library/Containers/com.tencent.xinWeChat/Data/Library/Application Support/com.tencent.xinWeChat/2.0b4.0.9/8be628ba3eab5f8c52f6f1b22f897153/Message/MessageTemp/8be628ba3eab5f8c52f6f1b22f897153/OpenData/...

我想在正则表达式中排除包含“ OpenData”的路径,因此我使用了这个:

R"^/Users/[^/]+/Library/Containers/com\.tencent\.\w+/.+/(?!OpenData)/.+"

但这是行不通的。负向前进对我来说有点难。有人可以告诉我正确的正则表达式吗?谢谢!

维克多·史翠比维

您可以使用

^/Users/[^/]+/Library/Containers/com\.tencent\.\w+/(?!(?:.*/)?OpenData(?:/|$)).+

正则表达式演示

细节

  • ^ -字符串开始
  • /Users/ -文字子字符串
  • [^/]+ -1个以上字符 /
  • /Library/Containers/com\.tencent\.-一个/Library/Containers/com.tencent.字符串
  • \w+ -1个以上的字符
  • /-一个/字符
  • (?!(?:.*/)?OpenData(?:/|$))-如果OpenData网址中包含子部分,则匹配失败的否定超前行为
  • .+ -除换行符以外的任意1个以上的字符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在C#中使用正则表达式查找和替换子字符串

在C#中使用正则表达式提取某些子字符串

在C中使用正则表达式

在C中使用POSIX正则表达式

如何在 C/Where 中使用正则表达式来查找文件?

在 C# 中使用正则表达式列出只有 txt 文件的目录

在C ++中直接在表达式中使用正则表达式捕获

在C#中使用正则表达式(正则表达式)从字符串获取值

如何在c ++ 11中使用正则表达式找到确切的子字符串?

如何在C#中使用正则表达式将此.js文件解析为xml文件?

如何使用正则表达式在C#中排除方括号来分隔单词

在C#中使用正则表达式在文本文件中跳过带有短划线的行

C ++使用正则表达式搜索“正则表达式运算符”

使用正则表达式在 C 中设置正确的正则表达式的问题

如何使用正则表达式中的变量$ 1在方法C#中使用?

C++ getline - 使用正则表达式提取子字符串

使用正则表达式在c#中查找子字符串

使用C ++用正则表达式替换子字符串匹配

如何使用 C 正则表达式提取子匹配

C ++随机正则表达式从文件替换

XML 文件中的 C# 正则表达式

如何选择“|”后的字符串 在 C++ 中使用正则表达式?

有什么方法可以在C#中使用正则表达式?

如何在C ++中使用正则表达式处理中文标点符号

如何检查一个单词是否是介词(在 C 中使用正则表达式)

如何在C ++中的正则表达式中使用变量?

在C#中使用正则表达式替换文本中的字符

如何在C#中使用正则表达式匹配多行

在 C# 中使用正则表达式解析字符串