LotosLabo

プログラミング技術とか気になった情報を載せていきます

Ruby言語について9

Stringクラス

str1 == str2
str1 != str2

== メソッドの両端の文字列が等しい場合はtrueを返し、等しく無い場合にはfalseを返す。
逆に!=メソッドの両端の文字列が等しく無い場合はtrueを返し、等しい場合はfalseを返します。


例:

str = "test"
if str == "test"
  print("等しい")
else
  print("等しく無い")
end



文字列の大小比較


例:

str1 = "abc"
str2 = "def"
if str1 > str2
  print("大きい文字列は", str1, "です")
else
  print("大きい文字列は", str2, "です")
end



アルファベットの大文字と小文字の比較では大文字の方が小さい値


指定した位置の文字の文字コードを取得


文字列[nth]


文字はバイト単位で数え、先頭が0となります。バイト単位となりますので日本語などを扱う場合は注意


例:

str = "Hello"
code = str[1]

print("取得した文字コードは", code, "です\n")
print(code, "に対応する文字は", code.chr, "です\n")



出力

取得した文字コードはeです
eに対応する文字はeです



文字列の一部を取得

<指定の位置から指定の長さの文字列を取得する>


文字列[nth, len]


例:

str = "Hello"
newStr = str[1, 2]



出力

el


<指定の開始位置と終了位置の文字列を取得する>


文字列[first..last]


例:

str = "Hello"
newStr = str[2..3]



出力

ll


<別の方法で指定の開始位置と終了位置の文字列を取得する>


文字列[first...last]


例:

str = "Hello"
newStr = str[2...3]



出力

l



文字列の一部を置き換える

<指定位置の1文字を別の文字列に置き換える>


文字列[nth] = newString

例:

str = "Hello"
str[1] = "oo"


出力

str にはHoollo




<開始位置と長さで指定したた部分文字列を置き換える>


文字列[nth, len] = newString


例:

str = "Hello"
str[1, 2] = "oo"


出力

strにはHoolo




<開始と終了位置で指定した部分文字列を置き換える>


文字列[first..last] = newString


例:

str = "Hello"
str[2..3] = "pp"


出力

strにはHeppo




<別の指定方法で開始と終了位置で指定した部分文字列を置き換える>


文字列[first...last]


例:


str = "Hello"
str[2...3] = "pp"


出力

strにはHepplo





指定した位置に文字列を挿入する


insert(nth, other)


例:

str = "Hello"
str.insert(1, "oo")


出力

strにはHooello




文字列を検索する


index(pattern[, pos])


文字列の検索を左端から右端に向かって行います。見つかった場合は文字列の左端の位置を返します。見つからなければ「nil」を返します。

例:


str = "Hello"
pos = str.index("ll")


出力

posには2


<右端から検索する>

rindex(pattern[, pos])


例:

str = "Hello"
pos = str.rindex("l")


出力

posには3



文字列が含まれているかどうか確認


include?(substr)


例:

str = "Hello"
check = str.include?("el")


出力

checkにはtrue



文字列の一部を削除する


delete(str[, str2[, ... ]])


例:

str = "Hello"
newStr = str.delete("ll")


出力

newStrにはHeo




<逆>


delete!(str[, str2[, ... ]])


例:

str = "Hello"
str.delete!("ll")

出力

strにはHeo




末尾の改行文字を取り除く


chomp メソッド


chomp([rs])

引数を省略した場合には末尾にある「\r」「\r\n」「\n」の全ての改行文字が削除されます。


例:

str = "Hello\r"
newStr = str.chomp


newStrにはHello




<逆>

chomp!([rs])


例:

str = "Hello\r"
str.chomp!


出力

strにはHello




空白文字を取り除く


strip


例:


str = " Hello\r"
newStr = str.strip


出力

newStrにはHello



<逆>

strip!


例:

str = " Hello\r"
str.strip!




取り除く位置を先頭又は末尾に


lstripメソッド及びlstrip!メソッドは文字列の先頭の空白文字を取り除きます。


rstripメソッド及びrstrip!メソッドは文字列の末尾の空白文字を取り除きます。




文字列を分割する

split([sep[, limit]])


1番目の引数に指定したパターンに従って文字列を分割し、分割された各部分文字列を要素とする配列を取得します。