我有以下问题:
输入字符串 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/