等号的正则表达式问题?

 手机用户2602901861 发布于 2023-02-08 13:29

在C#中,我试图验证一个类似于以下内容的字符串:

I@paramname='test'

要么

O@paramname=2827

这是我的代码:

 string t1 = "I@parameter='test'";

 string r = @"^([Ii]|[Oo])@\w=\w";

 var re = new Regex(r);

如果我从结尾或变量r处取掉“ = \ w”,则得到True。如果我在\ w之后添加“ = \ w”,则为False。我希望@和=之间的字符可以是任何字母数字值。=符号后的任何内容都可以包含字母数字和'(单引号)。我在这里做错了。我很少使用正则表达式,并且通常可以找到示例,尽管这是自定义格式,但即使是备忘单,我也遇到了问题。

1 个回答
  • ^([Ii]|[Oo])@\w+=(?<q>'?)[\w\d]+\k<q>$
    

    正则表达式:

    ^               start of line
     ([Ii]|[Oo])    either (I or i) or (O or o)
     \w+            1 or more word characters
       =            equals sign
       (?<q>'?)     capture 0 or 1 quotes in named group q
       [\w\d]+      1 or more word or digit characters
       \k<q>        repeat of what was captured in named group q
    $               end of line
    

    2023-02-08 13:33 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有