予約語
| abstract | assert | boolean | break | byte |
| case | catch | char | class | const |
| continue | default | do | double | else |
| enum | extends | final | finally | float |
| for | goto | if | implements | import |
| instanceof | int | interface | long | native |
| new | package | private | protected | public |
| return | short | static | strictfp | super |
| switch | synchrnized | this | throw | throws |
| transient | try | void | volatile | while |
| _ |
true 論理値リテラル false 論理値リテラル null nullリテラル
エスケープシーケンス一覧
\b バックスペース
\t 水平タブ
\n 改行
\r 復帰
\f 改ページ
\' シングルクオーテーション
\" ダブルクオーテーション
\\ \文字
\ooo 8進数の文字コードが表す文字
\uhhhh 16進数の文字コードが表す文字
エスケースシーケンスを使った特殊文字
\t タブ文字(「\u0009」)
\n 改行文字(「\u000A」)
\r キャリッジ・リターン文字(「\u000D」)
\f 用紙送り文字(「\u000C」)
\a 警告(ベル)文字(「\u0007」)
\e エスケープ文字(「\u001B」)
\cx xに対応する制御文字
\0n 8進値0nを持つ文字(0 <= n <= 7)
\0nn 8進値0nnを持つ文字(0 <= n <= 7)
\0mnn 8進値0mnnを持つ文字(0 <= m <= 3, 0 <= n <= 7)
\xhh 16進値 0xhhを持つ文字
\uhhhh 16進値 0xhhhhを持つ文字
\x{h...h} 16進値0xh...hを持つ文字
\N{name} Unicode文字の名前が'name'の文字行末記号
\n 改行文字 \r\n 改行文字+キャリッジ・リターン文字 \r キャリッジ・リターン文字 \u0085 次行文字 \u2028 行区切り文字 \u2029 段落区切り文字
※UNIX_LINES モードが有効な場合は、改行文字( \n )だけが行末記号として扱われます。
定義済み文字クラス
\d 数字: [0-9]
\D 数字以外: [^0-9]
\h 水平方向の空白文字:
[ \t\xA0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000]
\H 水平方向以外の空白文字: [^\h]
\s 空白文字: [\t\n\x0B\f\r]
\S 非空白文字: [^\s]
\v 垂直方向の空白文字: [\n\x0B\f\r\x85\u2028\u2029]
\V 垂直方向以外の空白文字: [^\v]
\w 単語文字: [a-zA-Z_0-9]
\W 非単語文字: [^\w]数量子のメタ文字
・最長一致数量子
? 1または0回
* 0回以上
+ 1回以上
{n} n回
{n,} n回以上
{n,m} n回以上、m回以下 (,の後にスペースを入れない)
・最短一致数量子
?? 1または0回
*? 0回以上
+? 1回以上
{n}? n回
{n,}? n回以上
{n,m}? n回以上、m回以下
・強欲な数量子(絶対最大指定子)
?+ 1または0回
*+ 0回以上
++ 1回以上
{n}+ n回
{n,}+ n回以上
{n,m}+ n回以上、m回以下ビット演算子
| 演算子 | 使用例 | 意味 |
|---|---|---|
| & | a & b | a と b の論理積(ビットAND) |
| | | a | b | a と b の論理和(ビットOR) |
| ^ | a ^ b | a と b の排他的論理和(ビットXOR) |
| ~ | ~a | a のビット反転(ビットNOT) |
| << | a << n | a を 左へ n ビットシフト |
| >> | a >> n | a を 右へ n ビットシフト(符号有り) |
| >>> | a >>> n | a を 右へ n ビットシフト(符号無し) |
シフト演算子
| 演算子 | 使用例 | 意味 |
|---|---|---|
| << | a << n | a を 左へ n ビットシフト |
| >> | a >> n | a を 右へ n ビットシフト(符号有り) |
| >>> | a >>> n | a を 右へ n ビットシフト(符号無し) |
演算子の結合規則
| 結合規則 | 演算子 |
|---|---|
| 左 | (引数) [配列添字] . ++ --(後置き) |
| 右 | ! ~ + -(単項演算子) ++ --(前置き) |
| 左 | new (型変換) |
| 左 | * / % |
| 左 | + -(算術演算子) |
| 左 | << >> >>> |
| 左 | > >= < <= instanceof |
| 左 | == != |
| 左 | & |
| 左 | ^ |
| 左 | | |
| 左 | && |
| 左 | || |
| 右 | ?: |
| 左 | = += -= *= /= %= <<= >>= >>>= &= |= ^= |
*上にある演算子ほど優先順位が高くなっています
演算子
| 演算子 | 使用例 | 意味 |
|---|---|---|
| += | A += B | A = A + B と同じ |
| -= | A -= B | A = A - B と同じ |
| *= | A *= B | A = A * B と同じ |
| /= | A /= B | A = A / B と同じ |
| %= | A %= B | A = A % B と同じ |
| &= | A &= B | A = A & B と同じ |
| |= | A |= B | A = A | B と同じ |
| ^= | A ^= B | A = A ^ B と同じ |
| <<= | A <<= B | A = A << B と同じ |
| >>= | A >>= B | A = A >> B と同じ |
| >>>= | A >>>= B | A = A >>> B と同じ |
関係演算子
| 演算子 | 使用例 | 意味 |
|---|---|---|
| < | A < B | AはBより小さい |
| <= | A <= B | AはBより小さいか等しい |
| > | A > B | AはBより大きい |
| >= | A > B | AはBより大きいか等しい |
| == | A == B | AとBは等しい |
| != | A != B | AはBは等しくない |
論理演算子
| 演算子 | 使用例 | 意味 |
|---|---|---|
| && | A && B | 論理積、AとBが共にtrueならtrue |
| || | A || B | 論理和、AかBの少なくとも1つがtrueならtrue |
| ! | !A | 否定、Aがtrueならfalse、Aがfalseならtrue |
正規表現で利用可能なフラグ
| 修飾子 | 埋め込みフラグ | 説明 |
|---|---|---|
| Pattern.CASE_INSENSITIVE | (?i) | 大文字と小文字を区別しないマッチングを有効にする |
| Pattern.MULTILINE | (?m) | 複数行モードを有効にする |
| Pattern.DOTALL | (?s) | DOTALL モードを有効にする |
| Pattern.UNICODE_CASE | (?u) | Unicode に準拠した大文字と小文字を区別しないマッチングを有効にする |
| Pattern.UNICODE_CHARACTER_CLASS | (?U) | 定義済みの文字クラスとPOSIX文字クラスのUnicodeバージョンを使用可能にする |
| Pattern.CANON_EQ | -- | 正規等価を有効にする |
| Pattern.UNIX_LINES | (?d) | Unix ラインモードを有効にする ( \n のみ行末記号として認識 |
| Pattern.LITERAL | -- | パターンのリテラル構文解析を有効にする |
| Pattern.COMMENTS | (?x) | パターン内で空白とコメントを使用できるようにする |
Unicode バージョンの定義済み文字クラスと POSIX 文字クラス
\p{Lower} 小文字:\p{IsLowercase}
\p{Upper} 大文字:\p{IsUppercase}
\p{ASCII} すべてのASCII文字: [\x00-\x7F]
\p{Alpha} 英字:\p{IsAlphabetic}
\p{Digit} 10進数の文字:\p{IsDigit}
\p{Alnum} 英数字:[\p{IsAlphabetic}\p{IsDigit}]
\p{Punct} 句読記号:\p{IsPunctuation}
\p{Graph} 表示できる文字: [^\p{IsWhite_Space}\p{gc=Cc}\p{gc=Cs}\p{gc=Cn}]
\p{Print} プリント可能文字: [\p{Graph}\p{Blank}&&[^\p{Cntrl}]]
\p{Blank} 空白またはタブ: [\p{IsWhite_Space}&&[^\p{gc=Zl}\p{gc=Zp}\x0a\x0b\x0c\x0d\x85]]
\p{Cntrl} 制御文字: \p{gc=Cc}
\p{XDigit} 16進数字: [\p{gc=Nd}\p{IsHex_Digit}]
\p{Space} 空白文字:\p{IsWhite_Space}
\d 数字: \p{IsDigit}
\D 数字以外: [^\d]
\s 空白文字: \p{IsWhite_Space}
\S 非空白文字: [^\s]
\w 単語構成文字: [\p{Alpha}\p{gc=Mn}\p{gc=Me}\p{gc=Mc}\p{Digit}\p{gc=Pc}\p{IsJoin_Control}]
\W 非単語文字: [^\w]システム・プロパティのキー
| キー | 値 |
|---|---|
| java.version | Java Runtime Environmentバージョン |
| java.version.date | Java Runtime Environmentバージョン日付(「ISO-8601 YYYY-MM-DD」形式) |
| java.vendor | Java Runtime Environmentのベンダー |
| java.vendor.url | JavaベンダーのURL |
| java.vendor.version | Javaベンダー・バージョンの(optional) |
| java.home | Javaのインストール先ディレクトリ |
| java.vm.specification.version | Java Virtual Machine仕様のバージョン |
| java.vm.specification.vendor | Java仮想マシンの仕様のベンダー |
| java.vm.specification.name | Java仮想マシンの仕様名 |
| java.vm.version | Runtime.Versionとして解釈されるJava Virtual Machineの実装バージョン |
| java.vm.vendor | Java仮想マシンの実装のベンダー |
| java.vm.name | Java仮想マシンの実装名 |
| java.specification.version | Java Runtime Environment仕様バージョン |
| java.specification.vendor | Java Runtime Environmentの仕様のベンダー |
| java.specification.name | Java Runtime Environmentの仕様名 |
| java.class.version | Javaクラスの形式のバージョン番号 |
| java.class.path | Javaクラス・パス |
| java.library.path | ライブラリのロード時に検索するパスのリスト |
| java.io.tmpdir | デフォルト一時ファイルのパス |
| java.compiler | 使用するJITコンパイラの名前 |
| os.name | オペレーティング・システム名 |
| os.arch | オペレーティング・システムのアーキテクチャ |
| os.version | オペレーティング・システムのバージョン |
| file.separator | ファイル区切り文字(UNIXでは"/") |
| path.separator | パス区切り文字(UNIXでは":") |
| line.separator | 行区切り文字(UNIXでは"\n") |
| user.name | ユーザーのアカウント名 |
| user.home | ユーザーのホーム・ディレクトリ |
| user.dir | ユーザーの現在の作業ディレクトリ |
三角関数
sin(double a) a の正弦(サイン)を返す
cos(double a) a の余弦(コサイン)を返す tan(double a) a の正接(タンジェント)を返す asin(double a) a の逆正弦(アークサイン)を返す acos(double a) a の逆余弦(アークコサイン)を返す atan(double a) a の逆正接(アークタンジェント)を返す sinh(double x) x の双曲線正弦(ハイパーボリックサイン)を返す cosh(double x) x の双曲線余弦(ハイパーボリックコサイン)を返す tanh(double x) x の双曲線正接(ハイパーボリックタンジェント)を返す atan2(double y, double x) 引数で指定されたの比率のアークタンジェントを返す
カレンダーフィールド
| 値 | 説明 |
|---|---|
| AM_PM | HOUR が正午より前であるか後であるかを示します。 |
| DATE | 月の日を示します。 |
| DAY_OF_MONTH | 月の日を示します。 |
| DAY_OF_WEEK | 曜日を示します。 |
| DAY_OF_WEEK_IN_MONTH | 現在の月の何度目の曜日かを示します。 |
| DAY_OF_YEAR | 現在の年の何日目かを示します。 |
| DST_OFFSET | 夏時間のオフセットをミリ秒単位で示します。 |
| ERA | ユリウス暦の AD または BC などの年代を示します。 |
| HOUR | 午前または午後の何時かを示します。 |
| HOUR_OF_DAY | 時刻を示します。 |
| MILLISECOND | ミリ秒を示します。 |
| MINUTE | 分を示します。 |
| MONTH | 月を示すフィールド値です。 |
| SECOND | 秒を示します。 |
| WEEK_OF_MONTH | 現在の月の何週目かを示します。 |
| WEEK_OF_YEAR | 現在の年の何週目かを示します。 |
| YEAR | 年を示すフィールド値です。 |
| ZONE_OFFSET | GMT から直接計算したオフセットをミリ秒単位で示します。 |
空白文字
Unicodeの空白文字(SPACE_SEPARATOR、LINE_SEPARATOR、PARAGRAPH_SEPARATOR) \u0009 水平タブ(\t) \u000A 改行(\n) \u000B 垂直タブ \u000C 改ページ(\f) \u000D 復帰(\r) \u001C \u001D \u001E \u001F \u0020 半角スペース
SPACE SEPARATOR: \u0020 半角スペース SPACE \u1680 OGHAM SPACE MARK \u2000 ~ \u200A EN QUAD..HAIR SPACE \u205F MEDIUM MATHEMATICAL SPACE \u3000 全角スペース IDEOGRAPHIC SPACE LINE SEPARATOR: \u2028 PARAGRAPH SEPARATOR: \u2029
※ SPACE SEPARATOR には他にノーブレークスペース と呼ばれる \u00A0 \u2007 \u202F の 3 つがありますが、 strip メソッドでは取り除かれません。正規表現における先読みと後読み
パターンA(?=パターンB) 肯定先読み パターンA(?!パターンB) 否定先読み (?<=パターンB)パターンA 肯定後読み (?<!パターンB)パターンA 否定後読み
0 件のコメント:
コメントを投稿