我想根据特殊字符(如“=”)将一个句子拆分为单词。我尝试了以下代码,但无法得到确切答案,请参阅我的代码:
import java.io.*;
import java.util.*;
public class RunExe {
public static void main(String[] args) {
try
{
Process pr=Runtime.getRuntime().exec("VmgDiskActivityTest.exe");
BufferedReader rd=new BufferedReader(new InputStreamReader(pr.getInputStream()));
String lines=rd.readLine();
String[] words=null;
while(lines!=null)
{
System.out.println(lines);
//System.out.println("*******************");
words=lines.split("=");
lines=rd.readLine();
}
System.out.println("After Spliting");
//System.out.println("***************************");
for(String word:words)
{
System.out.println(word);
}
}
catch(IOException e)
{
e.printStackTrace();
}
}
}
代码的输出是:
0 C: D: E:=99.993340#0.000000#0.035810#0.000000#0.000179#0.000358#0.000000#0.000000#1.999614#3071.407671_Total=99.993340#0.000000#0.035810#0.000000#0.000179#0.000358#0.000000#0.000000#1.999614#3071.407671
拆分后(总计99.993340#0.000000#0.035810#0.000000#0.000179#0.000358#0.000000#0.000000#1.999614 351.407671#
上面的代码分割正确,但我无法得到确切的结果。它只显示字符串的最后两部分,我需要显示所有四部分。
请分享你的想法或解决方案。。。
每次进入循环时,都会覆盖数组单词
的内容。因此,只有最后一条分割线将代表其内容。
您可以为每一行添加一个
Map
数组,并将结果存储在其中。
String lines=rd.readLine();
String[] words=null;
Map<Integer,String[]> map=new HashMap<Integer,String[]>();
Integer index=0;
while(lines!=null)
{
System.out.println(lines);
//System.out.println("*******************");
words=lines.split("=");
map.put(index,words);
index++;
lines=rd.readLine();
}
然后简单地遍历列表,得到每行的拆分数组(索引表示从0开始的行号)
for (Map.Entry<Integer, String[]> entry : map.entrySet()) {
System.out.println("Line " + entry.getKey());
for(final String content: entry.getValue()){
System.out.println(content);
}
}
在这行words=行中。拆分(“=”)
基本上覆盖了单词数组,因此总是只能从最后的行
字符串中获得结果
为了实现你想要的,你应该使用ArrayList
读取循环中的行,将其拆分,然后分配给外部定义的words
array。在下一次迭代中,获得下一行,将其拆分,然后(重新)分配相同的数组。在最后一次迭代之后,单词
数组因此包含拆分最后一行的结果,这就是您最后打印出来的结果。
我想把一个有空格或任何特殊字符的句子分成一个单词数组,空格或特殊字符也是数组的一个元素。 句子像: 应拆分为字符串数组: 请建议使用任何正则表达式或逻辑来使用java进行拆分。 我的问题漏了一件事。我还需要拆分数字字符。。但是使用split(“\b”)并不能拆分具有以下内容的字符串: abc12def 成
问题内容: 我已经编写了这段代码,用于拆分字符串并将其存储在字符串数组中:- 但是,我添加了[az],因为我想处理一些缩写问题。但是随后我的结果显示为: 此外,当埃弗里特(Everett)试图指导他们进行基础数学训练时,他们被证明是毫无反应的 我看到丢失了split函数中指定的模式。对我来说,可以省略句号,但是丢失单词的最后一个字母会打乱其含义。 有人可以帮助我吗?此外,有人可以帮助我解决缩写吗?
我正在使用指南https://www.baeldung.com/rest-api-search-language-rsql-fiql构建基于RSQL的JPA规范。 like子句如下所示: 我的问题是,处理用户输入中转义特殊字符的最佳方法是什么? 例如,如果用户提供了字符串: 上面的代码将翻译为: 我想对字符串中的进行转义,这样它就不会在LIKE子句中被计算为通配符。 以下帖子为每个数据库声明了类似
我希望能够根据子字符串分隔符拆分字符串,在分隔符子字符串的第一个字符之前开始拆分。现在: 将给我,但我希望得到
我想用空格和特殊字符(如果有的话)来分割字符串。例如:用于表示移动交换中心(信号强度)。 目前我正在使用正则表达式来拆分字符串,但我无法同时实现空格和特殊字符的拆分。 更新代码:
问题内容: 给定一个相对简单的CSS: 怎样让这个字符串停留约束到 的 150 ,和包装上的一个新的线 连字符 ? 问题答案: 用以下命令替换连字符: 它称为“软”连字符。