繁体   English   中英

在另一个字符串中找到带有ALXXXXX模式的字符串的正则表达式是什么?

[英]What is the regex for the finding the string with the pattern ALXXXXX in another string?

我想在另一个字符串中找到模式ALXXXXX的字符串。

例如,我要查找字符串数据阶段AL00123的字符串AL00123

我在Java中尝试了以下内容。

Pattern pattern = Pattern.compile("AL\\d\\d\\d\\d\\d");
Matcher matcher = pattern.matcher(searchString);
boolean matches = matcher.matches();

这总是返回false。 我的代码出了什么问题?

我想实现以下目标

  1. 确定搜索字符串是否包含ALXXXXX。
  2. 检索ALXXXXX的值。
  3. 我想用Java做到这一点。

以下是ALXXXXX可能以下列任何一种方式发生的各种方式

  1. 数据阶段_AL00123
  2. 数据阶段AL00123
  3. 数据阶段(AL00123)
  4. 数据阶段(_AL00123)
  5. 数据StageAL00123

最后

  1. 该字符串将始终以AL开头
  2. AL后面的字符串总是有5位数

使用Matcher#matches将正则表达式模式与整个输入字符串进行匹配。 您想要使用find

您还可以将正则表达式降低到AL\\\\d{5}

您正在使用Matcher.matches() ,如果字符串完全符合模式,则只返回true 为了您的目的,您将要使用Matcher.find()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM