0

我正在尝试创建一个基本的 C# 应用程序来管理我的 Apache vHosts 文件,因此我不必编辑原始文件来设置新的 vhost

现在我正在尝试让正则表达式与 Vhosts 匹配,但这不起作用,有人会为我提供一个工作示例

这是我目前拥有的

StreamReader reader = new StreamReader(filePath);
string content = reader.ReadToEnd();
string regEx = "<VirtualHost .*>.*</VirtualHost>";
foreach (Match match in Regex.Matches(content, regEx, RegexOptions.IgnoreCase))
{
     MessageBox.Show(match.Value);
}

这失败了,但如果我使用string regEx = "<VirtualHost .*>.*" 它,它会返回打开的 vhosts 标签,但不会返回任何应该返回所有内容的内容

4

1 回答 1

1

试试这个作为你的正则表达式

"<VirtualHost [^>]*>([^<]*)</VirtualHost>"

已编辑:在 周围添加了圆括号[^<]*,因此它将标签之间的文本作为匹配项之一返回。

于 2011-04-04T19:26:36.453 回答