在这个答案中我们尝试了多种形式的正则表达式。输入字符串是
"string1 & string2 / string3"
我们想把它分成字符串
{"string1","string2","string3"}
在分隔符&
和/
上(每个都有一个空格填充)。
如何使用string.split(" [/&] ")
构造正则表达式来完成此操作?
我没答对你的问题,你说的都很好。
如果你想要这个::{"string1","string2","string3"}
简单地做:system . out。println ( "{" + s.replaceAll("[/和 ;] ", "",") + ""}" );
试试下面这个
String[] result = string.split(" & | / ");
希望能有所帮助。
试试这个:
String[] split = s.split("[&//] ");
for (String part : "string1 & string2 / string3".split(" [/|&] ")) {
System.out.println(part);
}
你感兴趣的是。split(" [/|&] ") part
试试
String input = "string1 & string2 / string3";
boolean first = true;
StringBuilder sb = new StringBuilder("{"");
for (String part : input.split(" [&/] ")) {
if (!first) {
sb.append("","");
}
sb.append(part);
first = false;
}
String output = sb.append(""}").toString();
输出:{"string1","string2","string3"}
你的代码运行得很好。
import java.lang.*;
public class StringDemo {
public static void main(String[] args) {
String str = "string1 & string2 / string3";
String delimiters = " [/&] ";
// analyzing the string
String[] tokensVal = str.split(delimiters);
// prints the number of tokens
System.out.println("Count of tokens = " + tokensVal.length);
for(String token : tokensVal) {
System.out.println("#" + token + "#");
}
}
}