我希望在java中部分匹配字符串,例如
String s1 =“method”;
String s2 =“这是我正在使用的精彩方法”;
如果在s2中存在s1完成则返回s2。任何人都有算法或其他灵活的代码,提前谢谢你。
答案 0 :(得分:4)
这应该可以解决问题:
if (s2.contains(s1))
return s2;
答案 1 :(得分:0)
您可以使用Java.String.indexOf(),如here所述。
答案 2 :(得分:0)
非常直接。
if(s2.contains(s1)){
//do your stuff
}
答案 3 :(得分:0)
最简单的方法是在if( s2.contains(s1) ) return s2;
中使用String.contains
或者您可以使用正则表达式来匹配
if( s2.matches("(?i).*" + s1 + ".*") )
{
return s2;
}
虽然可能有点矫枉过正,但很高兴知道一些不同的方法。
答案 4 :(得分:0)
您可以使用contains()
课程的String
方法,请参阅以下示例,
public class TestClass
{
private String getString ( String str1, String str2 )
{
if ( str2.contains (str1) )
{
return str2;
}
else
{
return "-1";
}
}
public static void main ( String args[] )
{
String s1 = "method";
String s2 = "this is wonderful method i am using";
TestClass tc = new TestClass();
System.out.println ( tc.getString(s1, s2) );
}
}
// Output
// this is wonderful method i am using