正则表达式IsMatch问题

时间:2014-03-13 06:49:40

标签: c# regex

有人可以告诉我下面提到的Regex中的错误:

  1. 正则表达式:@"^(tcm:\d+-\d+)"

    输入字符串:tcm:12-123a6

    问题:\ dd应该只根据我的知识匹配数字。输入 字符串中有'a'。它仍与输入字符串匹配。

  2. 正则表达式:@"^[a-zA-Z0-9,&\s-]*$"

    输入字符串:我正在阅读的Transportation, Tourism & Travel 来自查询字符串,来自 Transportation%252c%2bTravel%2b%2526%2bTourism

    问题:我认为我已将所有输入的字符都记录下来了 正则表达式。仍然不匹配。

  3. 正则表达式:@"^[a-zA-Z0-9=]*$"

    输入字符串:U2VuaW9yIFBhcnRuZXIgJiBNYW5hZ2luZyB&&&EaXJlY3Rvcg==

    问题:即使使用'&'在输入中,为什么匹配?

1 个答案:

答案 0 :(得分:1)

  1. @“^(tcm:\ d + - - \ d +)”将匹配字符串中的tcm:12-123,您需要在正则表达式的末尾添加$以匹配整个字符串。

    @ “^(TCM:\ d + - \ d +)$”

  2. 如果':'属于字符串,则需要将其添加到列表中。

    @ “^ [A-ZA-Z0-9,&安培; \ S - :] * $”