C#で文字列の最初の文字を取得するには?
C#で文字列の先頭の1文字を取得したい場合、Substring()メソッドを使うのが最もシンプルで一般的な方法です。
対象となる文字列の例
まず、次のような文字列があったとします。
string str = "Welcome to the Planet!";
Substring()メソッドで最初の文字を取り出す
最初の文字だけを取得するには、Substring(0, 1)のように、開始位置「0」から抽出する長さ「1」を指定します。
string res = str.Substring(0, 1);
これで変数 res には文字列の1文字目だけが格納されます。
サンプルコード(完全版)
実際に動作するコード全体は以下の通りです。
using System;
public class Demo {
public static void Main() {
string str = "Welcome to the Planet!";
string res = str.Substring(0, 1);
Console.WriteLine(res);
}
}実行結果
W
補足:インデックスアクセスでも取得できる
Substring()メソッド以外にも、文字列に対してインデックスを直接指定する方法があります。str[0] と書けば、最初の文字を char型 として取得できます。
char firstChar = str[0];
文字列型(string)として扱いたい場合はSubstring()メソッド、単一の文字(char)として扱いたい場合はインデックスアクセスと、用途に応じて使い分けるとよいでしょう。
-
【Java入門】文字列から各単語の最初の文字だけを抽出して出力する方法
JavaにおけるStringクラスは、文字列を表すために使用されるクラスです。Javaプログラム内に記述されたすべての文字列リテラルは、Stringクラスのインスタンスとして扱われます。また、Stringオブジェクトは定数であり、一度生成するとその値を後から変更することができません。この性質は「不変(イミュータブル)」と呼ばれます。 文字列の中から各単語の最初の文字だけを取り出して出力したい場合は、以下のようなプログラムで実現できます。 サンプルコード public class FirstCharacterPrintTest { public static void main(Stri
-
Pythonで文字列内のn番目に出現する部分文字列の位置を見つける方法
Pythonでは、split()メソッドを活用することで、文字列内にn番目に出現する部分文字列の位置(インデックス)を簡単に求めることができます。基本的な考え方手順は以下の通りです。対象の部分文字列を区切り文字として、最大 n+1 回だけ文字列を分割します。分割後のリストの要素数が n+1 より大きければ、その部分文字列は少なくとも n 回以上出現していることになります。出現位置は、「元の文字列の長さ − 最後の分割部分の長さ − 部分文字列の長さ」というシンプルな式で計算できます。コード例def findnth(string, substring, n): parts = strin