Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将字符串从一个词拆分为另一个词?_Java_Android - Fatal编程技术网

Java 如何将字符串从一个词拆分为另一个词?

Java 如何将字符串从一个词拆分为另一个词?,java,android,Java,Android,例如,我有String info=“您的公共交通卡上有2美元,一张有效车票在2017-08-09 23.59到期”,我只想得到其中的两部分“2美元”,“一张有效车票在2017-08-09 23.59到期” 我试着用split()来实现这一点,但我在互联网上找不到如何从一个词拆分到另一个词。此外,我无法更改字符串信息,因为我是从外部服务器获取它的 此代码应该可以工作 String info = "You have 2$ on your public transport card and one a

例如,我有
String info=“您的公共交通卡上有2美元,一张有效车票在2017-08-09 23.59到期”
,我只想得到其中的两部分
“2美元”
“一张有效车票在2017-08-09 23.59到期”

我试着用
split()
来实现这一点,但我在互联网上找不到如何从一个词拆分到另一个词。此外,我无法更改
字符串信息,因为我是从外部服务器获取它的

此代码应该可以工作

String info = "You have 2$ on your public transport card and one active ticket which expires on 2017-08-09 23.59";
    Pattern pattern = Pattern.compile("(\\d\\$).*and\\s(.*)");
    Matcher m = pattern.matcher(info);
    while (m.find()) {
        System.out.println("First Group: " + m.group(1) + " \nSecond Group: " + m.group(2));
    }
正如Andreas之前所说,您应该使用模式和正则表达式在字符串信息中查找组,然后将它们保存在变量中,因为现在我刚刚打印了它们。

不要为此使用
split()
。使用
Pattern
应用正则表达式模式,并捕获模式中的组以提取所需的值。如果你还不懂正则表达式,那么现在就不是学习正则表达式的好时机。下面是正则表达式的一个示例: