如何使用java scanner和regex删除输入文本中的标点符号,而不是";i、 e.“;
我如何阅读这个句子并使用scanner解析它以获得下面的输出 输入:“它是红色的,即红色。未读取。” 输出:为红色,即红色未读取 我尝试了下面的方法,但没有删除单词末尾的句点:如何使用java scanner和regex删除输入文本中的标点符号,而不是";i、 e.“;,java,regex,java.util.scanner,Java,Regex,Java.util.scanner,我如何阅读这个句子并使用scanner解析它以获得下面的输出 输入:“它是红色的,即红色。未读取。” 输出:为红色,即红色未读取 我尝试了下面的方法,但没有删除单词末尾的句点: Scanner lineReader = new Scanner(scanner.nextLine()); lineReader.useDelimiter(("\\s+(\\W*\\s)?")); 编辑:让我更改此要求:如何从输入文本中删除所有标点符号,但不删除两个字母之间的句点(.),例如”(是一个保留字符,如果你真
Scanner lineReader = new Scanner(scanner.nextLine());
lineReader.useDelimiter(("\\s+(\\W*\\s)?"));
编辑:让我更改此要求:如何从输入文本中删除所有标点符号,但不删除两个字母之间的句点(.),例如
”(
是一个保留字符,如果你真的想匹配
的话,你必须用\
对它进行转义,否则它会匹配任何符号。谢谢,这确实有效!你能告诉我如何使用它来删除任何其他标点符号吗(请参见编辑)?请参阅我的编辑。您的附加要求使正则表达式更加复杂。最好扩展扫描程序并覆盖next,以便从标记中删除有问题的标点符号。是的,您的解决方案有效,但10个字母的限制将其搞乱。请参阅输入:它是红色的,即庆祝活动,即红色。不可读。只需将限制增加到什么你认为什么是合理的