Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
与正则表达式匹配的java字符串_Java_Regex_String_Pattern Matching - Fatal编程技术网

与正则表达式匹配的java字符串

与正则表达式匹配的java字符串,java,regex,string,pattern-matching,Java,Regex,String,Pattern Matching,我需要匹配一个特定的键。钥匙是由破折号分隔的10套4套。组合可以是字母或数字的组合 例如 aa11-bb22-cc33-44dd-55ee-66ff-gg77-hh88-99ii-jj10 我只想验证模式是10组4个由破折号分隔的 可能通过正则表达式匹配,但我不知道如何匹配 任何帮助都将不胜感激 ^[a-zA-Z0-9]{4}(?:-[a-zA-Z0-9]{4}){9}$ 试试这个。看演示 试试这个。看演示 下面是正在运行的正则表达式: 说明: [a-zA-Z0-9]-->从a到z、a到z

我需要匹配一个特定的键。钥匙是由破折号分隔的10套4套。组合可以是字母或数字的组合

例如

aa11-bb22-cc33-44dd-55ee-66ff-gg77-hh88-99ii-jj10

我只想验证模式是10组4个由破折号分隔的

可能通过正则表达式匹配,但我不知道如何匹配

任何帮助都将不胜感激

^[a-zA-Z0-9]{4}(?:-[a-zA-Z0-9]{4}){9}$
试试这个。看演示

试试这个。看演示

下面是正在运行的正则表达式:

说明:

  • [a-zA-Z0-9]
    -->从a到z、a到z和0到9的任意字符
  • [a-zA-Z0-9]{4}
    -->{4}正好表示4。所以
    [a-zA-Z0-9]{4}
    意味着 正好4个字符
  • [a-zA-Z0-9]{4}
    --->在末尾添加破折号(-) 以匹配破折号分隔符。这应该与
    aa11-
    相匹配 范例
  • ([a-zA-Z0-9]{4}-
    -->将#3放入括号中
  • ([a-zA-Z0-9]{4}-{9}
    -->将
    {9}
    添加到括号中,以指定此模式重复9次
  • ([a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}
    -->
  • 下面是正在运行的正则表达式:

    说明:

  • [a-zA-Z0-9]
    -->从a到z、a到z和0到9的任意字符
  • [a-zA-Z0-9]{4}
    -->{4}正好表示4。所以
    [a-zA-Z0-9]{4}
    意味着 正好4个字符
  • [a-zA-Z0-9]{4}
    --->在末尾添加破折号(-) 以匹配破折号分隔符。这应该与
    aa11-
    相匹配 范例
  • ([a-zA-Z0-9]{4}-
    -->将#3放入括号中
  • ([a-zA-Z0-9]{4}-{9}
    -->将
    {9}
    添加到括号中,以指定此模式重复9次
  • ([a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}
    -->

  • 你可以这样做:

    (?!.*_)(\w{4}-){9}\w{4}
    

    这利用了
    \w
    表示“任何字母、数字或下划线”这一事实,并且否定的前瞻性阻止了下划线

    您可以这样做:

    (?!.*_)(\w{4}-){9}\w{4}
    

    这利用了
    \w
    表示“任何字母、数字或下划线”这一事实,并且否定的前瞻性阻止了下划线

    这方面的正则表达式应该不难。你看了吗?这个正则表达式应该不难。你看了吗?很好的链接。。。我不知道regex测试中存在这样的东西。很好的链接。。。我不知道regex测试中存在类似的东西。使用@vks发布的工具:这是我的regex-任何一个都可以:我已经添加了它作为单独的注释,但也添加到了答案中。谢谢。使用@vks发布的工具:这是我的正则表达式-任何一个都可以:我已经添加了它作为单独的注释,但也添加到了答案中。谢谢。@nhahtdh是的,我知道,但是如果你读了我的答案,你会发现这不是问题,因为我使用了否定的前瞻来断言输入中没有下划线。我在NLA中使用了
    \w
    来缩短正则表达式。@nhahdh是的,我知道,但是如果你阅读我的答案,你会发现这不是一个问题,因为我使用了否定的前瞻性来断言输入中没有下划线。我在NLA中使用了
    \w
    ,使正则表达式总体上更短。