algorithm - 字符串格式化算法建议

标签 algorithm

我有以下问题:

输入字符串 1:“A[SPACE]B[SPACE]C[SPACE][SPACE]D[SPACE][SPACE]E”
输入字符串 2:“1-”或“1,2”或“3-”

如果输入字符串 2 是 1- 那么我应该从第一个单词返回字符串

如果输入字符串是 3- 那么我应该从第 3 个单词返回字符串,
如果输入字符串是 1,2 那么我应该返回单词 1 和 2

不能假设多个空格是分隔符

例如

3- 应该返回 C[SPACE][SPACE]D[SPACE][SPACE]E

请将 [SPACE] 视为实际的空格字符

最佳答案

你没有说是什么语言,所以... Java! 它是 hacky,并假设输入是有效的,但可能是一个很好的起点

public void foo(String input, String q) {
  //First clean up the input string so that all tokens are delimited by one space
  input = input.replaceAll(" *", " ");

  String[] inputTokens = input.split(",");       
  String[] queries = q.split(",");
  for (String query : queries) {
    if (query.endsWith(-)) {
      query = query.replace("-", "");
      for (int i = Integer.parseInt(query), i <= inputTokens.length; i++) {
        System.out.println(inputTokens[i]);
      }
    } else {
      System.out.println(inputTokens[Integer.parseInt(query)]);
    }
  }

关于algorithm - 字符串格式化算法建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3485164/

相关文章:

algorithm - 日常编码问题,1.4 : Running time given in the solution incorrect?

algorithm - 内存和路径数组

javascript - 高效地走上 DOM 树,检查 nodeType 和属性?

c++ - 使用 boost::polygon 遍历 Voronoi 图边缘的非递归算法

algorithm - 快速排序的内存复杂度

algorithm - 背包 0-1 数量固定

c# - 将数字与字符串中的其他符号分开

Python - 为每个元素查找左侧第一个非零元素的索引

arrays - 在线性时间内将未知数量的元素插入动态数组

sql - MongoDB中地理空间索引的内部机制