❶ java中如何模糊查找
你這個把四個字拆開單獨找不就完了= =
所謂的模糊查找最多也就像sql裡面的like
計算機本身就是精確的。你要模糊就要加入人為判斷這是毋庸置疑的。
❷ java模糊匹配 字元串匹配某個字元串
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;
publicclassTest2{
publicstaticvoidmain(String[]args){
Test2test=newTest2();
Stringtext="測試123abc實名失敗測試123abc";
System.out.println(test.match(text));
}
privatebooleanmatch(Stringtext){
Patternpattern=Pattern.compile("(44|實名失敗|實名不成功|認證失敗|實名認證失敗)");
Matchermatcher=pattern.matcher(text);
if(matcher.find()){
System.out.println("匹配到了:"+matcher.group(1));
returntrue;
}
System.out.println("沒有匹配到");
returnfalse;
}
}
❸ java中是如何實現基於文字標題的模糊匹配的,下面的代碼是什麼意思啊 請幫忙解釋下
private boolean StringCheckString(String key, String dbkey) {
if (dbkey.contains(key))//dbkey包含key那麼返回true,比如「123123程序123122"和"程序"
return true;
char[] key_char = key.trim().toLowerCase().toCharArray(); //把key所有字元變成小寫的單個字元數組,估計key包含漢字的話程序直接就掛了
for (char c : key_char) {//循環上面的數組
if (String.valueOf(c).equals(" "))
continue;
if (dbkey.indexOf(String.valueOf(c)) > -1)//如果dbkey包含上面數組的任意一個字元那麼也返回true,比如「123123程序123122"和"asf程sd"true(因為字元"程"),「123123程序123122"和"jasf1123序撒地方程"返回ture(因為"序")
return true; }
return false;//以上以外則false }
另外,這個邏輯放棄吧,上網上搜有一個好點兒的。
❹ 如何用java實現模糊查詢
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class TestDemo {
public static void main(String[] args) {
List<String> aList=new ArrayList<String>();
aList.add("abc12de34");
aList.add("abc02de02");
String regex="^[a-zA-Z]{3}02[a-zA-Z]{2}02$";
Iterator<String> it =aList.iterator();
while(it.hasNext()){
String str=it.next();
System.out.println(str+"==");
if(str.matches(regex)){
System.out.println(str);
}
}
}
}
❺ java中怎麼匹配字元串
匹配方式(其中每個方式對應RegUtil.java中的一個方法)代碼:
package test;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegUtil {
/**
* 方式一:基本正則表達式實現
* @param str
* @param reg
* @return
*/
public static boolean matchMatcher(String str,String reg){
Pattern pattern =Pattern.compile(reg);
Matcher matcher=pattern.matcher(str);
return matcher.matches();
}
/**
* 方式二:利用Pattern自帶實現
* @param str
* @param reg
* @return
*/
public static boolean matchPattern(String str,String reg){
return Pattern.matches(reg, str);
}
/**
* 方式三:String自帶實現
* @param str
* @param reg
* @return
*/
public static boolean matchStr(String str,String reg){
return str.matches(reg);
}
}
對應單元測試代碼如下:
package test;
import org.junit.Assert;
import org.junit.Test;
public class TestReg {
@Test
public void testParttern(){
Assert.assertTrue(RegUtil.matchMatcher("123", "//d+"));
Assert.assertTrue(RegUtil.matchPattern("123", "//d+"));
Assert.assertTrue(RegUtil.matchStr("123", "//d+"));
}
}