我需要的是逃避一个字符串中的每个单词,并逃避每个特殊字符,如:!,?._'@。我已经试过是这样的:如何从字符串中跳出 s(空格字符)?
public class Solution
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
Pattern pat = Pattern.compile("[!|,|?|.|_|'|@]");
String a = scan.nextLine();
scan.close();
String[] part = pat.split(a);
System.out.println(part.length);
for(String p: part)
System.out.println(p);
}
}
虽然这确实逃避特殊字符,我不能设法找到一种方法,有正则表达式匹配的每个单词之间的空格。 另外,我试过在正则表达式之后使用\s
和\\s
。
对于输入像:The dog is a very lazy dog, isn't he?
输出应为:
The
dog
is
a
very
lazy
dog
isn
t
he
我认为你是对的“|”字符。但是这仍然不能逃避字符串中的每个空间。 –
“逃避串中的每个空间”是什么意思?你能否更新你的问题并发布你的意见和预期结果? – Pshemo
@MinaF让我知道编辑过的版本是否适合你。如果确实会尝试添加解释。 – Pshemo