㈠ 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实现模糊查询
你调用这个方法,返回的List就是你要的结果了
public static List<Integer> find(List<String> strList) {
List<Integer> resultList = new ArrayList<Integer>();
String regex = "[a-zA-Z]{3}02[a-zA-Z]{2}02";
for(int i = 0; i < strList.size(); i++) {
Matcher matcher = Pattern.compile(regex).matcher(strList.get(i));
if(matcher.matches()) {
resultList.add(i);
}
}
return resultList;
}
㈢ java语言实现满足多条件匹配简单过滤输出问题
package;
importjava.io.File;
importjava.io.FileWriter;
importjava.io.IOException;
importjava.util.Arrays;
importjava.util.LinkedList;
publicclassCombin
{
privatestaticStringline=System.getProperty("line.separator");
privatestaticLinkedList<String[]>recursionSub(LinkedList<String[]>list,intcount,String[]array,intind,
intstart,int...indexs)
{
start++;
if(start>count-1)
{
returnnull;
}
if(start==0)
{
indexs=newint[array.length];
}
for(indexs[start]=ind;indexs[start]<array.length;indexs[start]++)
{
recursionSub(list,count,array,indexs[start]+1,start,indexs);
if(start==count-1)
{
String[]temp=newString[count];
for(inti=count-1;i>=0;i--)
{
temp[start-i]=array[indexs[start-i]];
}
booleanflag=true;
L:for(inti=0;i<temp.length;i++)
{
for(intj=i+1;j<temp.length;j++)
{
if(temp[i]==temp[j])
{
flag=false;
breakL;
}
}
}
if(flag)
{
list.add(temp);
}
}
}
returnlist;
}
privatestaticvoidfilter(LinkedList<String[]>list)throwsIOException
{
Filefile=newFile("c:/116.txt");
FileWriterfw=newFileWriter(file);
for(String[]strings:list)
{
intcount1=0,count2=0,count3=0;
Stringtemp=Arrays.toString(strings).replaceAll("[\[\]\s]","");
if(temp.contains("01"))
{
count1++;
count3++;
}
if(temp.contains("02"))
{
count1++;
count2++;
}
if(temp.contains("03"))
{
count1++;
}
if(temp.contains("06"))
{
count2++;
count3++;
}
if(temp.contains("08"))
{
count2++;
count3++;
}
if(temp.contains("09"))
{
count2++;
count3++;
}
if(temp.contains("07"))
{
count3++;
}
if(temp.contains("10"))
{
count3++;
}
if(temp.contains("11"))
{
count3++;
}
if(count1>=1&&count1<=2&&count2>=1&&count2<=3&&count3>=0&&count3<=2)
{
fw.write(temp+line);
}
}
fw.flush();
fw.close();
}
publicstaticvoidmain(String[]args)throwsIOException
{
String[]A={"01","02","03","04","05","06","07","08","09","10","11"};
LinkedList<String[]>list=newLinkedList<String[]>();
recursionSub(list,6,A,0,-1);
//假定从1-11这11个数字中任选6个全组合输出(每行输出6个不相同数字,并且从小到大排列)
for(String[]strings:list)
{
Stringtemp=Arrays.toString(strings).replaceAll("[\[\]\s]","");
System.out.println(temp);
}
//将第一问得到数据过滤,并且同时满足下面3条条件就输出,输出结果用"116.txt"保存在C盘
filter(list);
}
}
㈣ java模糊匹配
双向字符求和,简单的模糊匹配
㈤ 如何在JAVA里做 模糊查询
可以使用正则表达式实现, 可以字符串本身的方法实现,请看示例:
importjava.util.regex.Pattern;
/**
*@authorArvin
*@time2016/11/821:38
*/
publicclassMain{
publicstaticvoidmain(String[]args){
Stringkeyword=".(你好)";
StringcontentOne="hello.(你好)asd";//LIKE匹配
StringcontentTwo="你好";//LIKE不匹配
//方法一:利用正则表达式
//构造正则表达式
Patternregex=Pattern.compile(keyword);
System.out.println(regex.matcher(contentOne).find());//true
System.out.println(regex.matcher(contentTwo).find());//false
//方法二:利用String的contain方法
System.out.println(contentOne.contains(keyword));//true
System.out.println(contentTwo.contains(keyword));//false
//方法三:利用indexOf方法,找得到说明包含
System.out.println(contentOne.indexOf(keyword)>-1);//true
System.out.println(contentTwo.indexOf(keyword)>-1);//false
}
}
㈥ java中如何模糊查找
你好,按照你的要求代码如下
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
public class text {
public static void main(String[] args) {
try {
String key = "这个字符串是将进行模糊查找的";
BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream("d:\\一篇文章.txt")));
StringBuffer str = new StringBuffer();
String temp;
while (null != (temp = in.readLine())) {
str.append(temp);
}
int first = str.indexOf(key);
if (first != -1) {
System.out.println("【" + key + "】在文章中的首次出现位置是:" + first);
} else {
System.out.println("【" + key + "】在文章中没有找到");
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
㈦ java 用字符串模糊匹配另一个字符串
按LS所说的确可以。要是一定要用String的话可以用
String[] s;
for(String ss:s)
if(ss.contains("贸易"))
System.out.println(ss);
这样回的答方法。
㈧ java语言如何实现同时多条件匹配过滤编程问题
不能理解你的条件2
什么意思?
每行输出6个不相同数字既然是不同的数字,你下面的含有 1个以上是不是都不成立
㈨ java中是如何实现基于文字标题的模糊匹配的,下面的代码是实现这个功能的吗
通过正则表达式使用正则匹配可以用于实现基于文字标题的模糊匹配。
正则表达式,又称正专规表示法属、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。
关于正则表达式,下面这个博客有详细的介绍:http://blog.sina.com.cn/s/blog_9cda2bc70102w02a.html
㈩ java 中模糊查询
select * from a where name like '%我%'
这样查询a表中有我字内的
select * from a where name like '我%'
这样查询a表中我字开头的
select * from a where name like '%我'
这样查询a表中我字结尾的容