【发布时间】:2020-05-31 00:54:35
【问题描述】:
我正在尝试修改此正则表达式,使其不匹配重复项。
当前正则表达式:
[\""].+?[\""]|[^ ]+
示例字符串:
".doc" "test.xls", ".doc","me.pdf", "test file.doc"
预期结果:
".doc"
"test.xls"
"me.pdf"
但不是
".doc"
"test.xls"
".doc"
"me.pdf"
注意:
- 文件名可能包含空格,例如
test file.doc - 项目可以用空格或逗号或两者分隔
- 字符串可以有引号或没有引号,例如
.doc或".doc"。
【问题讨论】:
-
文件名可以有空格吗?试试
("[^"\s]+")(?!.*\1)regex101.com/r/qBhkPM/1 -
您在 RegexBuddy 中选择了哪种语言?您想在哪种工具或语言中使用该模式?
-
请注意是否支持环视,但可能是
(?<!\S)("[^"]+"|[^\s"]+)(?=(?:,? |$))(?!.* \1)regex101.com/r/AogrRL/1 -
恕我直言正则表达式是错误的工具。您应该使用解析器。
-
你应该马上提到,它是 C# (.Net),然后你会得到更准确的答案!
标签: c# .net regex vb.net capturing-group