我有一个像以下[Lcom.hexgen.ro.request.CreateRequisitionRO;
如何仅从java中的com.hexgen.ro.request.CreateRequisitionRO
获取字符串[Lcom.hexgen.ro.request.CreateRequisitionRO;
。我得到com.hexgen.ro.request.CreateRequisitionRO;
的情况很少,所以我还要检查给定的字符串是否具有我期望的格式com.hexgen.ro.request.CreateRequisitionRO
请帮我纠正。
答案 0 :(得分:2)
你应该使用正则表达式:
String input = "com.hexgen.ro.request.CreateRequisitionRO"; //OR "[Lcom.hexgen.ro.request.CreateRequisitionRO;"
Pattern p = Pattern.compile("(\\[L)*([\\w\\.]+)(\\;)*");
Matcher m = p.matcher(input);
while(m.find()){
System.out.println(m.group(2));
}
答案 1 :(得分:1)
如何从[Lcom.hexgen.ro.request.CreateRequisitionRO;
获取字符串com.hexgen.ro.request.CreateRequisitionRO
String res = str.substring(2,str.length-1);
答案 2 :(得分:1)
这是一段代码:
String toBeFixed = "[Lcom.hexgen.ro.request.CreateRequisitionRO;";
String toReplaceWith =toBeFixed.replaceAll("\\[L", "").replaceAll("\\;","");
System.out.println(toReplaceWith);
答案 3 :(得分:1)
考虑到您有字符串替换查询,这可能适用于您的情况:
public void test(){
String s1 = "[Lcom.hexgen.ro.request.CreateRequisitionRO";
String s2 = "com.hexgen.ro.request.CreateRequisitionRO";
System.out.println(getClassName(s1));
System.out.println(getClassName(s2));
}
public String getClassName(String s){
if(s.startsWith("\\[L")){
s = s.substring(2, s.length()-1);
}
return s;
}
答案 4 :(得分:0)
Use substring function
String url="com.hexgen.ro.request.CreateRequisitionRO";
int n=url.length();
String url1=url.substring(