Java 如何使用正则表达式或其他技术解析此字符串?

Java 如何使用正则表达式或其他技术解析此字符串?,java,regex,string,Java,Regex,String,我有一个字符串: hello example >> hai man 如何使用Java正则表达式或其他技术提取“hai man”?最基本的方法是使用字符串及其索引中的字符 对于hello示例>>海漫使用 String str ="hello example >> hai man"; int startIndex = str.indexOf(">>"); String result = str.subString(startIndex+2,str.length(

我有一个字符串:

hello example >> hai man

如何使用Java正则表达式或其他技术提取“hai man”?

最基本的方法是使用字符串及其索引中的字符

对于
hello示例>>海漫
使用

String str ="hello example >> hai man";
int startIndex = str.indexOf(">>");
String result = str.subString(startIndex+2,str.length());  //2 because >> two character 
我认为它理清了基本思路

你可以使用很多技巧进行解析

另一个简单的方法是:

     String str="hello example >> hai man";
     System.out.println(str.split(">>")[1]);

据我所知,你可以做一些类似的事情

string myString = "hello example >> hai man";
string mySecondString = mystring.Replace("hai man", ""); 
在Java 1.4中,您将只获得
hello-example>

 String s="hello example >> hai man";
 String[] b=s.split(">>");
 System.out.println(b[1].trim());
您可以将正则表达式用作:

String str    = "hello example >> hai man";
String result = str.replaceAll(".*>>\\s*(.*)", "$1");
请参阅运行:


考虑以下几点:

public static void main(String[] args) {
        //If I get a null value it means the stringToRetrieveFromParam does not contain stringToRetrieveParam.
        String returnVal = getStringIfExist("hai man", "hello example >> hai man");
        System.out.println(returnVal);

        returnVal = getStringIfExist("hai man", "hello example >> hai man is now in the middle!!!");
        System.out.println(returnVal);
    }

    /**Takes the example and make it more real-world like.
     * 
     * @param stringToRetrieveParam
     * @param stringToRetrieveFromParam
     * @return
     */
    public static String getStringIfExist(String stringToRetrieveParam,String stringToRetrieveFromParam){
        if(stringToRetrieveFromParam == null || stringToRetrieveParam == null){
            return null;
        }
        int index = stringToRetrieveFromParam.indexOf(stringToRetrieveParam);
        if(index > -1){
            return stringToRetrieveFromParam.substring(index,index + stringToRetrieveParam.length());
        }
        return null;
    }

@塔索斯:但是,@subha,请(像往常一样)遵循:陈述任何特殊限制,展示你迄今为止的尝试,并询问具体是什么让你困惑。我相信你误解了这个问题。
public static void main(String[] args) {
        //If I get a null value it means the stringToRetrieveFromParam does not contain stringToRetrieveParam.
        String returnVal = getStringIfExist("hai man", "hello example >> hai man");
        System.out.println(returnVal);

        returnVal = getStringIfExist("hai man", "hello example >> hai man is now in the middle!!!");
        System.out.println(returnVal);
    }

    /**Takes the example and make it more real-world like.
     * 
     * @param stringToRetrieveParam
     * @param stringToRetrieveFromParam
     * @return
     */
    public static String getStringIfExist(String stringToRetrieveParam,String stringToRetrieveFromParam){
        if(stringToRetrieveFromParam == null || stringToRetrieveParam == null){
            return null;
        }
        int index = stringToRetrieveFromParam.indexOf(stringToRetrieveParam);
        if(index > -1){
            return stringToRetrieveFromParam.substring(index,index + stringToRetrieveParam.length());
        }
        return null;
    }