c# - 偷偷摸摸的反斜杠的情况 - 正则表达式

标签 c# regex

我在这里遗漏了一些非常明显的东西,但我就是看不到它。

我有:

string input = @"999\abc.txt";
string pattern = @"\\(.*)";
string output = Regex.Match(input,pattern).ToString();
Console.WriteLine(output);

我的结果是:

\abc.txt

我不想要斜杠 并且无法弄清楚为什么它会偷偷进入输出。我尝试翻转模式,斜杠再次出现在输出中:

string pattern = @"^(.*)\\";

并得到:

999\

奇怪。结果在 Osherove 的调节器中很好。有什么想法吗?

谢谢。

最佳答案

匹配整个 匹配;你想要第一组;

string output = Regex.Match(input,pattern).Groups[1].Value;

(凭内存;可能略有不同)

关于c# - 偷偷摸摸的反斜杠的情况 - 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2853348/

相关文章:

c# - iOS 启用被蓝牙键盘禁用的虚拟键盘

regex - 将几个正则表达式匹配写入excel中的不同单元格

regex - Perl 字符串替换 : Match, 但不替换,正则表达式的一部分

javascript - 正则表达式删除字符串中标记之外的文本

java - 使用正则表达式提取SQL数据

c# - 无法从 C# 运行命令并捕获 StandardOutput

C#如何用单个定时器通知其他类?

java - 使用正则表达式在单个字符后删除零

c# - 在页面执行长时间运行的任务时写入多行文本

c# - 使用悲观锁定将项目添加到 Microsoft.ApplicationServer.Caching.DataCache?