#5 Kotlin Koans Introduction/Strings 解説
1 はじめに
Kotlin公式リファレンスのKotlin Koans/Stringsの解説記事です。
Kotlin Koansを通してKotlinを学習される人の参考になれば幸いです。
ただし、リファレンスを自力で読む力を養いたい方は、
すぐにこの記事に目を通さないで下さい!
一度各自で挑戦してから、お目通し頂ければと思います
2 正規表現・エスケープシーケンス
正規表現(regex patterns)とは、文字列に関する文法事項とイメージして頂ければOKです。
特殊な記号を用いて文字列パターンを指定します。
エスケープシーケンスとは、画面上に文字を出力する際に、文字そのものを出力するのではなく、文字色の変更やカーソルの移動、文字の消去など、文字出力の制御を行う特殊な文字列のことです。
/
記号と他の記号のセットで用います。
(エスケープシーケンス(エスケープ文字)とは? ~見えない文字を表現する~|データ分析用語を解説を引用させていただきました。)
具体例は#3で解説します。
3 Introduction/Stringsの解説
Kotlin Koans Introduction/Stringsの解説です。
随時本サイトの内容を引用させていただきます。
右側の本文を見てみましょう。
Read about different string literals and string templates in Kotlin.
Raw strings are useful for writing regex patterns, you don't need to escape a backslash by a backslash. Below there is a pattern that matches a date in format 13.06.1992 (two digits, a dot, two digits, a dot, four digits):
fun getPattern() = """\d{2}\.\d{2}\.\d{4}"""
Using month variable rewrite this pattern in such a way that it matches the date in format 13 JUN 1992 (two digits, a whitespace, a month abbreviation, a whitespace, four digits).
different string literals and string templatesを読みなさい。
raw stringsは正規表現を記述するのに便利である。バックスラッシュでバックスラッシュをエスケープする必要がない。
以下は13.06.1992
(2個の数字、1個のドット、2個の数字、1個のドット、4個の数字)のフォーマットの日付にマッチする文字列パターンである。
変数monthを用いてこのパターンを13 JUN 1992
(2個の数字、スペース、月の略記、スペース、4個の数字)に書き直しなさい。
とあります。(13,06,1992,JUNはあくまでパターンの例ですので、気にする必要はありません。)
つまり、
val month = "(JAN|FEB|MAR|APR|MAY|JUN|JUL|AUG|SEP|OCT|NOV|DEC)"
fun getPattern(): String = TODO()
変数month(月の略記が格納されている)を用いて、TODO()部分で13 JUN 1992
のフォーマットを実現すれば良いわけです。
ここで、正規表現・エスケープシーケンスを利用します。
使用する、正規表現・エスケープシーケンスは以下のとおりです。
-
\d
:1~9のいずれかの数字を表現します。 -
{}
:直前の文字を{}内の数字の回数分表示します。 -
${}
:{}内の文字列を、別の文字列に埋め込む見ます(これをString Templateと言います。)
これらを用いて、TODO()を
"""\d{2} ${month} \d{4}"""
と書き換えればOKです。
(参考)
13.06.1992
を表現している正規表現・エスケープシーケンスを見てみましょう。
"""\d{2}\.\d{2}\.\d{4}"""
\.
は正規表現での.
の「任意の1文字を指定する」といった意味を打ち消し、.
そのものを表示します。
4 最後に
次回はKotlin Koans Introducion/Data classesの解説をします
あと、みなさんraw stringsってどう日本語で呼んでいるんでしょうか、、、?
よろしければご意見ください
Author And Source
この問題について(#5 Kotlin Koans Introduction/Strings 解説), 我々は、より多くの情報をここで見つけました https://qiita.com/G-o/items/dd61fe9fa188d740152c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .