String to Title Case
文字列をタイトルケースに変換するツール
このツールは、与えられた文字列をタイトルケース形式に変換するオンラインで無料のツールです。システムやソフトウェアに依存することなく利用できるため、アクセスしやすく便利です。入力のクリア、出力のコピー、サンプルテキストなどの機能を備えたこのツールは、文字列をタイトルケースに変換するためのユーザーフレンドリーなインターフェイスを提供します。
目的とシナリオ
このツールの目的は、文字列をタイトルケース形式に変換することです。タイトルケースは、本や曲、映画などのタイトルを書くときに一般的に使用されます。このツールを使用することで、プログラミングの知識やソフトウェアのインストールを必要とせず、簡単に任意の文字列をタイトルケースに変換することができます。
このツールは、以下のような様々なシナリオで役立ちます。
- コンテンツ作成:記事、ブログ投稿などのコンテンツを書くときに、見出しやタイトルをタイトルケース形式に変換して、プロフェッショナルで洗練された印象を与えることができます。
 - データ処理:データセットや文字列のリストをタイトルケースに変換する必要がある場合、このツールはシステム依存性なしに効率的に処理できます。
 - 学習:プログラミングに初めて取り組む方が、タイトルケース変換の仕組みを理解するために、さまざまなプログラミング言語でのコード例を提供しています。
 
ツールの使い方
このツールの使い方は簡単です。以下の手順に従って、文字列をタイトルケースに変換してください。
- 文字列を入力する:提供されたテキストボックスに、タイトルケースに変換したい文字列を入力または貼り付けてください。たとえば、「string to title case」という文字列を入力すると、ツールは「String to Title Case」と変換します。
 - 変換ボタンをクリックする:変換したい文字列を入力したら、変換ボタンをクリックしてください。ツールは文字列を即座にタイトルケース形式に変換します。
 - 出力をコピーする:変換後、単純にコピーするボタンをクリックして、変換された文字列をクリップボードにコピーすることができます。これにより、変換された文字列を必要な場所に簡単に貼り付けることができます。
 
異なるプログラミング言語でのコード例
タイトルケース変換が異なるプログラミング言語で実装されている方法に興味がある場合、このセクションでは各言語についてのコード例と説明を提供します。
Python
def convert_to_title_case(string):
    title_case_words = []
    non_title_case_words = ['a', 'an', 'the', 'and', 'but', 'or', 'for', 'nor', 'on', 'at', 'to', 'from', 'by', 'over']
    for word in string.split():
        if word.lower() in non_title_case_words:
            title_case_words.append(word.lower())
        else:
            title_case_words.append(word.capitalize())
    return ' '.join(title_case_words)
## 使用例
input_string = 'string to title case'
output_string = convert_to_title_case(input_string)
print(output_string)Python では、入力文字列をsplit()関数を使って単語ごとに分割できます。その後、各単語が冠詞、接続詞、前置詞のリストに含まれているかどうかを確認します。含まれている場合は、単語を小文字に変換します。そうでなければ、単語の最初の文字を大文字に変換します。最後に、join()メソッドを使って単語を再度結合します。
Java
public class TitleCaseConverter {
    public static String convertToTitleCase(String string) {
        StringBuilder titleCaseString = new StringBuilder();
        String[] words = string.split(" ");
        String[] nonTitleCaseWords = {"a", "an", "the", "and", "but", "or", "for", "nor", "on", "at", "to", "from", "by", "over"};
        for (String word : words) {
            if (containsIgnoreCase(nonTitleCaseWords, word)) {
                titleCaseString.append(word.toLowerCase());
            } else {
                titleCaseString.append(Character.toUpperCase(word.charAt(0))).append(word.substring(1).toLowerCase());
            }
            titleCaseString.append(" ");
        }
        return titleCaseString.toString().trim();
    }
    private static boolean containsIgnoreCase(String[] arr, String word) {
        for (String element : arr) {
            if (element.equalsIgnoreCase(word)) {
                return true;
            }
        }
        return false;
    }
    // 使用例
    public static void main(String[] args) {
        String inputString = "string to title case";
        String outputString = convertToTitleCase(inputString);
        System.out.println(outputString);
    }
}Java では、split()メソッドを使って入力文字列を単語ごとに分割します。その後、各単語が非タイトルケースの単語の配列に含まれているかどうかをチェックします。含まれている場合は、単語を小文字に変換します。含まれていない場合は、最初の文字を大文字にして残りの文字を小文字に変換します。最後に、単語を結合して先頭または末尾のスペースをトリムします。
JavaScript
function convertToTitleCase(string) {
  var titleCaseString = "";
  var words = string.toLowerCase().split(" ");
  var nonTitleCaseWords = [
    "a",
    "an",
    "the",
    "and",
    "but",
    "or",
    "for",
    "nor",
    "on",
    "at",
    "to",
    "from",
    "by",
    "over",
  ];
  for (var i = 0; i < words.length; i++) {
    var word = words[i];
    if (nonTitleCaseWords.includes(word)) {
      titleCaseString += word;
    } else {
      titleCaseString += word.charAt(0).toUpperCase() + word.slice(1);
    }
    titleCaseString += " ";
  }
  return titleCaseString.trim();
}
// 使用例
var inputString = "string to title case";
var outputString = convertToTitleCase(inputString);
console.log(outputString);JavaScript では、split()メソッドを使って入力文字列を単語ごとに分割します。その後、各単語が非タイトルケースの単語の配列に含まれているかどうかをチェックします。含まれている場合は、単語をそのままにします。含まれていない場合は、最初の文字を大文字にして残りの文字を追加します。最後に、単語を結合して先頭または末尾のスペースをトリムします。
Golang
パッケージメイン
インポート (
    "fmt"
    "strings"
)
func convertToTitleCase(s string) string {
    titleCaseString := ""
    words := strings.Fields(strings.ToLower(s))
    nonTitleCaseWords := []string{"a", "an", "the", "and", "but", "or", "for", "nor", "on", "at", "to", "from", "by", "over"}
    for _, word := range words {
        if contains(nonTitleCaseWords, word) {
            titleCaseString += word
        } else {
            titleCaseString += strings.Title(word)
        }
        titleCaseString += " "
    }
    return strings.TrimSpace(titleCaseString)
}
func contains(arr []string, word string) bool {
    for _, element := range arr {
        if strings.EqualFold(element, word) {
            return true
        }
    }
    return false
}
// 使い方の例
func main() {
    inputString := "string to title case"
    outputString := convertToTitleCase(inputString)
    fmt.Println(outputString)
}Golang では、stringsパッケージのFields()関数を使用して、入力文字列を個々の単語に分割します。そして、各単語が非タイトルケースの単語のスライスに含まれるかどうかを確認します。含まれている場合、そのままの単語を使用し、含まれていない場合は、Title()を使用して単語をタイトルケースに変換します。最後に、単語を結合して、先頭または末尾のスペースをトリムします。
Ruby
def convert_to_title_case(string)
    title_case_string = ''
    words = string.downcase.split(' ')
    non_title_case_words = ['a', 'an', 'the', 'and', 'but', 'or', 'for', 'nor', 'on', 'at', 'to', 'from', 'by', 'over']
    words.each do |word|
        if non_title_case_words.include?(word)
            title_case_string += word
        else
            title_case_string += word.capitalize
        end
        title_case_string += ' '
    end
    title_case_string.strip
endRuby では、downcaseメソッドとsplitメソッドを使用して、入力文字列を個々の単語に分割します。そして、各単語が非タイトルケースの単語の配列に含まれるかどうかを確認します。含まれている場合、そのままの単語を使用し、含まれていない場合は、capitalizeメソッドを使用して単語をタイトルケースに変換します。最後に、単語を結合して、先頭または末尾のスペースをトリムします。