0

我有带有数字字母的字符串并将其发送到下面的代码,它解析带有 % 符号。

例子 :

at3t - at%t    -   Incorrect
at34t - at%%t   -  Incorrect

期待 :

at3t - at3t  - Correct
at34t - at34t - Correct
at234ert vbnm - (at234ert) String 1 and (vbnm) String2 - Correct
stack overflow - stack -string1 and overflow - String2  - Correct

String aName =StringUtils.lowerCase(aNumber.replaceAll("[^a-zA-Z]", "%"));

如果有任何字符串“堆栈溢出” - 它首先转换为堆栈,然后将溢出作为第二个......没问题。我正在寻找相同的方法,但不需要替换数字。

请指教。

4

1 回答 1

0

为什么如果出现数字,字符串替换 % 符号

Number.replaceAll("[^a-zA-Z]", "%")

您正在用 a 替换所有非a-zA-Z字符,% 我看不出您希望代码如何做任何其他事情。

如果你想用空格分割字符串,我建议你使用 split。

String line = "stack overflow";
String[] words = line.toLowerCase().split(" "); 
// words[0] = "stack", soreds[1] = "overflow"
于 2013-07-25T00:01:49.643 回答