gpt4 book ai didi

java - 公共(public)前缀的正则表达式模式

转载 作者:行者123 更新时间:2023-12-01 12:46:44 26 4
gpt4 key购买 nike

我有类似 ^(\d{3}.\d{2}.ABC|\d{10}.\d{6}.XYZ)$ 的模式

我想将每个单词与

匹配
                             123.45.ABC

我的问题是我有很多像 ABC,XYZ,PQR 这样的扩展名,所以我想让我的模式像前缀 \d{3}.\d{2} 一样。 通用,然后是扩展。

我想要类似(前缀模式)(扩展名)

                  (\d{3}.\d{2})  (.ABC or .XYZ MORE EXTENSIONS)

我可以 ^(\d{3}.\d{2})(.ABC|.PQR |.XYZ)$ 但它匹配两组,一组用于数字,一组用于扩展名。

最佳答案

只需将扩展放入非捕获组中即可。您可以在非捕获组中添加任意数量的扩展。

^(\d{10}\.\d{6}\.(?:ABC|XYZ))$

说明:

  • ^ 断言我们位于行的开头。
  • () 捕获组。
  • \d{10} 正好 10 位数字。
  • \. 一个文字点。
  • \d{6} 精确匹配 6 位数字。
  • \. 匹配文字点。
  • (?:) 非捕获组。它不会捕获任何内容,但会执行匹配操作。
  • ABC 文字 ABC
  • | 逻辑或运算符。
  • XYZ 匹配文字 XYZ
  • $ 行尾。

关于java - 公共(public)前缀的正则表达式模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24631132/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com