Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Java将以大写字母键入的名称列表更改为以大写字母键入的名称_Java_String_Capitalization - Fatal编程技术网

使用Java将以大写字母键入的名称列表更改为以大写字母键入的名称

使用Java将以大写字母键入的名称列表更改为以大写字母键入的名称,java,string,capitalization,Java,String,Capitalization,假设我有一个文件,里面有几百行大写的文字。 我应该如何把每行的单词改成小写,只有第一个字母保持大写 TEXT ON FIST LINE TEXT ON SECOND LINE TEXT ON THIRD LINE 到 我是这么想的 s.substring(0, 1).toUpperCase() + s.substring(1).toLowerCase() 但是使用StringBuilder可能更聪明,甚至可能有比StringBuilder更好的东西。如果您不介意使用apace com

假设我有一个文件,里面有几百行大写的文字。 我应该如何把每行的单词改成小写,只有第一个字母保持大写

 TEXT ON FIST LINE
 TEXT ON SECOND LINE
 TEXT ON THIRD LINE

我是这么想的

 s.substring(0, 1).toUpperCase() + s.substring(1).toLowerCase()

但是使用StringBuilder可能更聪明,甚至可能有比StringBuilder更好的东西。

如果您不介意使用apace commons,您可以使用或

四个选项(实际上是5个,但其中一个是另一个的变体):

  • 使用已处理的库 句式大写
  • 将句子分开,然后将每个单词的第一个字母大写
  • Regex表示空格+字母,并用大写版本替换模式的结尾
  • 遍历字符串并在到达空格后大写
  • #5是#4的一个变体,它仍在字符串中运行,但它是二进制的。这并不困难,但它会根据ASCII还是Unicode进行更改,并且可能会因字符集而更改


    如果您使用自定义例程执行此操作,请将其设置为一个可重用类,因为我几乎可以保证您将再次使用它。

    如果它都是大写的,那么您就不必再使用大写的()第一部分,这本质上不是一个副本,作为一个补充,我同意Bala关于“购买与构建”的决定。
     s.substring(0, 1).toUpperCase() + s.substring(1).toLowerCase()