当前位置: 首页 > 知识库问答 >
问题:

如何在Java中使用正则表达式来完成此操作

子车才捷
2023-03-14

我有一个编程练习(在Java),在结束时,它要求我获取整数列表并输出它们,仅用一个空格隔开。我试着用一个正则表达式来完成这个操作,但一个小时后我放弃了,只做了system.out.print(str1+“”);,这对于我的情况来说已经足够好了,因为我现在正在自学。

不过,我想知道我做错了什么,并希望得到一些帮助。代码非常简单:我有一个整数列表,它们是名为x的数组列表的一部分

for (int k = 0; k < n; k++) {
    sum += X.get(k);
    //while I was getting the sum I figured i'd get the string as well
    String str1 = Integer.toString(X.get(k));
    //str1.replaceAll("\\s+", "\s");
    str1 = str1.replaceAll("\\s+", " ");
    System.out.print(str1);
}

再说一次,我仍然在基础上工作,所以这是我所缺少的东西...我假设它会在每个循环之后用一个空白替换任何空白,但它没有输出任何空白:2614306212625451010222046

预期样本输出2 6 14 30 62 126 254 510 102 2 204 6

共有1个答案

方斌
2023-03-14

对此使用正则表达式是不合适的。

一种方法是先打印分隔符:

// Start with an empty delimiter, so you don't print a space in front of the
// first number.
String delim = "";
for (int i : X) {
  sum += i;

  System.out.print(delim);
  System.out.print(i);

  // Now set the delimiter to a single space, so a single space will be printed
  // before all elements (except the first).
  delim = " ";
}

使用流会更容易:

sum = X.stream().mapToInt(a -> a).sum();
System.out.println(X.stream().map(Integer::toString).collect(joining(" "));
 类似资料:
  • 输出: 通缉犯:

  • 本文向大家介绍如何在TestNG中使用正则表达式?,包括了如何在TestNG中使用正则表达式?的使用技巧和注意事项,需要的朋友参考一下 我们在TestNG中使用正则表达式来使用以某种模式命名的一组测试方法。 示例 Testng xml文件。 所有名称开头为Payment的测试方法都将从回归套件中排除。 示例 Login()将被执行,但是所有以名字Payment开头的方法都将被排除在执行之外。这是使

  • 本文向大家介绍Java正则表达式使用,包括了Java正则表达式使用的使用技巧和注意事项,需要的朋友参考一下 一:抓取网页中的Email地址 利用正则表达式匹配网页中的文本 将网页内容分割提取 打印结果: 867124664@qq.com 260678675@QQ.com 806208721@qq.com hr_1985@163.com 32575987@qq.com qingchen0501@12

  • 问题内容: 我正在尝试实现一个接受字符串列表的Web服务,每个字符串都是一个正则表达式。需要将这些与数据库的六列进行比较,并且需要返回任何匹配的行。 我相信Oracle具有我可以使用的regexp_like()函数,但是我正在寻找使用Hibernate做到这一点的 最佳 方法,因此,我不反对持久性引擎。 我从这样的东西开始,其中参与者集合包含正则表达式: 这是行不通的,因为“输入”不会执行我想要的

  • 问题内容: 我正在使用这样的构造: 但是我需要选择所有以“某些文本”开头的文本的链接,所以我想知道这里是否可以使用regexp?在lxml文档中找不到任何内容 问题答案: 您可以执行此操作(尽管该示例不需要正则表达式)。Lxml支持来自EXSLT扩展功能的正则表达式。(请参阅XPath类的lxml文档,但该方法也适用于该方法) 请注意,您需要提供名称空间映射,以便它知道xpath表达式中的“ re

  • 本文向大家介绍您如何在Cucumber中使用正则表达式?,包括了您如何在Cucumber中使用正则表达式?的使用技巧和注意事项,需要的朋友参考一下 我们可以在Cucumber中使用正则表达式来选择功能文件中相似语句的集合。 示例 功能文件 步骤定义文件具有@Given(“([^ \”] *)season $“)中的@Given时间表,该表在正则表达式的帮助下将两个Given语句映射到Feature