相关疑难解决方法(0)

Java的toLowerCase()是否保留原始字符串长度?

假设有两个Java String对象:

String str = "<my string>";
String strLower = str.toLowerCase();
Run Code Online (Sandbox Code Playgroud)

对于<my string>表达式的每个值,它是否正确呢?

str.length() == strLower.length()
Run Code Online (Sandbox Code Playgroud)

评估到true

那么,是否String.toLowerCase()为String的任何值保留原始字符串长度?

java string string-length

28
推荐指数
1
解决办法
3462
查看次数

组匹配toUpperCase()

让我们考虑以下示例:

String s = str.replaceAll("regexp", "$1");
Run Code Online (Sandbox Code Playgroud)

有些语言让我们指定\U$1的地方$1,其将匹配用大写字母组.如何使用Java实现相同的目标?

我知道我们可以使用Pattern类并获取组并将其转换为大写,但这不是我想要的.我想改变$1完成工作的东西.

我也尝试过:

String s = str.replaceAll("regexp", "$1".toUpperCase());
Run Code Online (Sandbox Code Playgroud)

但它看起来"$1".toUpperCase()是,"$1"而不是匹配.我确认使用:

String s = str.replaceAll("regexp", method("$1"));

// method declared as method()
private static String method(String s) {
    System.out.println(s); // prints "$1"
    return s;
}
Run Code Online (Sandbox Code Playgroud)

甚至在Java中是否允许?

编辑:

String s = "abc";
System.out.println(s.replaceAll("(a)", "$1")); // should print "Abc"
Run Code Online (Sandbox Code Playgroud)

编辑可能的DUPE:

我不是在寻找的方式使用m.group(),是否有可能使用类似\U$1的地方$1replaceAll()

java regex

8
推荐指数
1
解决办法
244
查看次数

是否有后向引用的大写/小写版本的正则表达式替换术语?

假设我想将小写字符串更改为"标题大小写"; 每个单词的第一个字母大写的地方.可以replaceAll()通过在替换表达式中使用修饰符一次调用来完成吗?

例如,

str = str.replaceAll("\\b(\\S)", "???$1");
Run Code Online (Sandbox Code Playgroud)

哪里"???" 是一些折叠下一个字母大小写的表达式.

我已经看到这是其他工具(如textpad),\U将下一个字母折叠为大写.

java regex string replace uppercase

7
推荐指数
1
解决办法
5388
查看次数

重新格式化Java字符串

我有一个看起来像这样的字符串:

CALDARI_STARSHIP_ENGINEERING
Run Code Online (Sandbox Code Playgroud)

我需要编辑它看起来像

Caldari Starship Engineering
Run Code Online (Sandbox Code Playgroud)

不幸的是,早上三点,我不能为我的生活弄清楚这一点.我总是在更换字符串中的东西时遇到麻烦,所以任何帮助都会很棒,并且会帮助我了解将来如何做到这一点.

java replace camelcasing string-formatting

4
推荐指数
1
解决办法
474
查看次数