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
应用正则表达式模式,并捕获模式中的组以提取所需的值。如果你还不懂正则表达式,那么现在就不是学习正则表达式的好时机。下面是正则表达式的一个示例: