如何使Regex仅匹配完全匹配?

时间:2011-01-03 00:59:44

标签: c# .net regex exact-match

好的,基本上我有一些代码可以匹配正则表达式的URL。然后它将根据URL匹配的正则表达式调用某个函数。我从不想要为URL调用多个函数,我希望正则表达式匹配必须是“精确”

例如,使用简单的网址/,我使用的是与/匹配的简单正则表达式/,但它也会匹配/foo/foo/bar之类的内容}。

如何在C#/ .Net?

中阻止此部分匹配行为

2 个答案:

答案 0 :(得分:27)

使用^匹配字符串的开头,使用$作为字符串的结尾。

例如:^/$匹配/但不匹配/foo^/匹配/foo但不匹配foo/

答案 1 :(得分:-2)

在要匹配的关键字的开头和结尾添加空格。 例如,你有一个字符串"Hey! foobar I am foo bar."现在让我们说你要匹配foo。 你可以这样做/\s+foo\s+/i这将只返回foo而不是foobar的匹配。