我第一次想在 C# 中使用正则表达式。我在 SQL Server 中流畅地使用它们,但与我在这里经历的相比,它非常容易......
首先,我想解决简单的字符串(取自另一个问题):
static void Main(string[] args)
{
string FullString = "[http: Something] One Two Three[http: AnotherOne] Four[http: BlahBlah] sdksaod,cne 9ofew {}@:P{";
Regex regex = new Regex(".*[[]http:.*[]]");
foreach (Match match in regex.Matches(FullString))
{
Console.WriteLine(match.Value);
}
Console.ReadKey();
}
我希望我会在[http: Something]..., [http: AnotherOne]...和处收到匹配项[http: BlahBlah]...,但是在当前尝试中,匹配开始于[http: AnotherOne]...和结束于之前[http: BlahBlah],如果我.*在模式末尾添加,则匹配是整个字符串。
我很好奇,为什么它只给了我一场比赛而不是三场预期的比赛。我正在浏览正则表达式手册和其他帖子,但无法理解。
获得这些匹配项的有效模式是什么?(我不需要详细解释,我想我会弄清楚自己会得到什么)。
一切都归结于此(以防我不清楚)
我想匹配[http:...],其中三个点可以是任何东西。
绝地无双
Smart猫小萌
相关分类