【发布时间】:2014-07-01 21:12:22
【问题描述】:
我想使用正则表达式函数匹配字符串中的某些字符组,而与它们在字符串中的顺序无关。但是,唯一的要求是它们都必须在那里。
我试过了
String elD = "15672";
String t = "12";
if ((elD.matches(".*[" + t + "].*"))) {
System.out.println(elD);
}
这个检查是否存在任何字符。但我希望他们所有人都在那里。
我也试过了
String elD = "15672";
String t = "12";
if ((elD.matches(".*(" + t + ").*"))) {
System.out.println(elD);
}
这也不起作用。我已经搜索了很长时间,但我找不到一个示例,即模式中的所有字符都必须独立于它们的顺序出现在字符串中。
谢谢
【问题讨论】:
-
尝试拆分 t,然后在每个字母中间添加 .*。所以它会像 .*t[0].*t[1].*t[2].......
-
这很不方便。我将多次使用该程序,而不仅仅是一次,所以我不能每次都手动拆分,但无论如何谢谢!
-
您不必手动拆分它。可以写一个小代码
-
这里真的需要使用正则表达式吗?
-
嗯,这是一个相当简单的任务。我认为Java中必须有一个内置的正则表达式,因为使用正则表达式比循环遍历序列更优雅?