我有一个字符串,我希望将其更改为Array,然后在一行中仅显示拆分字。 我不知道该怎么做我唯一的想法是这样做:
public static void main(String[] args) {
String ciag="Hello My name is Tomek, i am from Mars.";
ciag=ciag.replaceAll(",", "").replaceAll(".", "");
System.out.println(ciag);
但也是错的 任何建议
答案 0 :(得分:3)
这会奏效。
String ciag="Hello My name is Tomek, i am from Mars.";
ciag=ciag.replace(",", "").replace(".", "");
System.out.println(ciag);
String[] arr = ciag.split("\\s+");
replaceAll()
使用RegEx替换,而RegEx .
代表任何字符。使用replace()
。
split()
也会使用RegEx并\s+
匹配一个或多个空格。
答案 1 :(得分:2)
String ciag="Hello My name is Tomek, i am from Mars.";
String[] words = ciag.replaceAll("[,.]", "").split("\\s+");
测试:
System.out.println(Arrays.asList(words).toString());
输出:
[Hello, My, name, is, Tomek, i, am, from, Mars]
说明:
[,.]
是正则表达式。 []
是一个字符类,这意味着正则表达式将匹配括号内的任何字符。所以[,.]
表示匹配逗号或句号。此字符类的任何匹配都将替换为空字符串replaceAll("[,.]", "")
,因此,将删除所有逗号和句号。
替换完成后,我们将生成的String与另一个与一个或多个空格匹配的正则表达式\\s+
拆分。因此split("\\s+")
会将字符串拆分为单词。