StringUtility.ms
- StringUtilityStruct
- regexClass
- regexOptionsEnum
- stringClass
- stringSplitOptionsEnum
- backslashRegex
- camelRegex
- commaRegex
- crRegex
- dotNetUtility
- doubleQuoteRegex
- enumDef
- formatRegex
- lfRegex
- nonWordRegex
- percentRegex
- tabRegex
- ClipString
- CreateRegex
- EscapeBackslash
- EscapeWhiteSpace
- FormatString
- FromCodePoint
- GetRegexOptions
- GetRegexPattern
- GetUnicodeCodePointFromSurrogatePair
- GetValidUnicodeCodePoint
- IsRegexObject
- Join
- PadLeft
- PadRight
- Serialize
- Split
- SplitByLF
- ToCharArray
- ToPascalCase
- Trim
- TrimEnd
- TrimStart
- StructName
- Dump
- Equals
struct StringUtilityStruct
文字列操作を行うためのメソッドを提供する。
private regexClass
- プロパティ
<DotNetClass:System.Text.RegularExpressions.Regex>
private regexOptionsEnum
- プロパティ
<Struct:EnumStruct>
"System.Text.RegularExpressions.RegexOptions"
列挙型。
private stringClass
- プロパティ
<DotNetClass:System.String>
private stringSplitOptionsEnum
- プロパティ
<Struct:EnumStruct>
"System.StringSplitOptions"
列挙型。
private backslashRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
\\\\
に一致する正規表現オブジェクト。
private camelRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
(?<=\b)\w|(?<=[a-z])[A-Z]|(?<=[0-9_])[a-z]
に一致する正規表現オブジェクト。
private commaRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
\s*,\s*
に一致する正規表現オブジェクト。
private crRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
\r
に一致する正規表現オブジェクト。
private dotNetUtility
- プロパティ
<Struct:DotNetUtilityStruct>
private doubleQuoteRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
\\\"
に一致する正規表現オブジェクト。
private enumDef
- プロパティ
<StructDef:EnumStruct>
private formatRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
(?<!\\\\)%
に一致する正規表現オブジェクト。
private lfRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
\n
に一致する正規表現オブジェクト。
private nonWordRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
\W
に一致する正規表現オブジェクト。
private percentRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
\\\\%
に一致する正規表現オブジェクト。
private tabRegex
- プロパティ
<DotNetObject:System.Text.RegularExpressions.Regex>
\t
に一致する正規表現オブジェクト。
public fn ClipString
入力文字列を指定の桁数に収まるよう省略する。
- パラメータ
input
<String>
- パラメータ
digit:
<Integer>
桁数。既定値は
40
。
- 戻り値
<String>
public fn CreateRegex
正規表現オブジェクトを作成する。
- パラメータ
pattern
<String>
正規表現パターン文字列。
- パラメータ
options:
<Array[<Name>]>
正規表現のオプション。既定値は
#(#IgnoreCase, #Singleline)
。
有効な値は次の通り。値 効果 #Compiled
正規表現をアセンブリにコンパイルする。 #CultureInvariant
言語のカルチャの違いを無視する。 #ECMAScript
式のECMAScript準拠の動作を有効にする。 #ExplicitCapture
名前のないグループをキャプチャしない。 (?<name>subexpression)
という形式で、明示的に名前または番号が付加されたグループのみを有効なキャプチャ対象とする。#IgnoreCase
大文字と小文字を区別しない一致を使用する。 #IgnorePatternWhitespace
エスケープされていない空白をパターンから除外し、シャープ記号 #
の後ろのコメントを有効にする。#Multiline
複数行モードを使用する。 ^
と$
は、(入力文字列の先頭および末尾ではなく)各行の先頭および末尾と一致する。#None
既定の動作を使用する。 #RightToLeft
検索の方向を変更する。左から右ではなく、右から左に検索する。 #Singleline
単一行モードを使用する。このモードでは、ピリオド .
は任意の1文字と一致する(\n
を除くすべての文字の代用)。詳細はRegexOptions 列挙型、および正規表現のオプションを参照。
- 戻り値
<DotNetObject:System.Text.RegularExpressions.Regex>
public fn EscapeBackslash
入力文字列中の\
、\%
、\"
、\n
、\r
、および\t
をエスケープ処理する。
- パラメータ
input
<String>
- 戻り値
<String>
public fn EscapeWhiteSpace
入力文字列中の\n
、\r
、および\t
をエスケープ処理する。
- パラメータ
input
<String>
- 戻り値
<String>
public fn FormatString
format
関数のパラメータを配列で渡せるようにしたメソッド。
- パラメータ
input
<String>
フォーマット文字列。
- パラメータ
values
<Array[<Any>]>
フォーマット文字列中の
%
の数に対応した配列。
- 戻り値
<String>
public fn FromCodePoint
Unicodeコードポイントの配列を文字列に変換する。
- パラメータ
codePoints
<Array[<Integer>]>
10進数、または16進数のコードポイント配列。
- 戻り値
<String>
- 補足
0x10000
以上は補助コードポイントとして処理する。
public fn GetRegexOptions
正規表現オブジェクトのオプションを配列として取得する。
- パラメータ
obj
<DotNetObject:System.Text.RegularExpressions.Regex>
正規表現オブジェクト。
- パラメータ
asStringArray:
<BooleanClass>
文字列配列として取得する場合は
true
、名前配列として取得する場合はfalse
。既定値はfalse
。
- 戻り値
<Array[<Name>]|Array[<String>]>
public fn GetRegexPattern
正規表現オブジェクトの正規表現パターン文字列を取得する。
- パラメータ
obj
<DotNetObject:System.Text.RegularExpressions.Regex>
正規表現オブジェクト。
- 戻り値
<String>
public fn GetUnicodeCodePointFromSurrogatePair
サロゲートペアからUnicodeコードポイントを取得する。
- パラメータ
highSurrogate
<Integer>
上位サロゲートコードポイント。
- パラメータ
lowSurrogate
<Integer>
下位サロゲートコードポイント。
- 戻り値
<Integer>
Unicodeコードポイント。
public fn GetValidUnicodeCodePoint
Unicodeコードポイントから正しい文字に変換可能なUnicodeコードポイントの配列を取得する。
- パラメータ
codePoint
<Integer>
10進数、または16進数の整数値。
- 戻り値
<Array[<Integer>]>
codePoint
が0x10000
以上の場合は1番目が上位サロゲートコードポイント、2番目が下位サロゲートコードポイントの配列、0xFFFF
以下の場合は渡されたコードポイントのみの配列。
public fn IsRegexObject
- パラメータ
obj
<DotNetObject:System.Text.RegularExpressions.Regex>
正規表現オブジェクト。
- 戻り値
<BooleanClass>
public fn Join
文字列配列の全ての要素を連結する。
- パラメータ
input
<Array[<String>]>
文字列配列。
- パラメータ
separator:
<String>
区切り文字。既定値は
""
。
- 戻り値
<String>
public fn PadLeft
文字列の左側に任意の文字を埋め込むことで現在の文字列を右寄せした新しい文字列を生成する。
- パラメータ
input
<String>
- パラメータ
width
<Integer>
生成される文字列の文字数。
- パラメータ
char
<String>
埋め込み文字。二文字以上の文字列を指定した場合は一文字目を使用する。
- 戻り値
<String>
- 補足
input
width
char
結果 "foo"
10
-
"-------foo"
public fn PadRight
文字列の右側に任意の文字を埋め込むことで現在の文字列を左寄せした新しい文字列を生成する。
- パラメータ
input
<String>
- パラメータ
width
<Integer>
生成される文字列の文字数。
- パラメータ
char
<String>
埋め込み文字。二文字以上の文字列を指定した場合は一文字目を使用する。
- 戻り値
<String>
- 補足
input
width
char
結果 "foo"
10
-
"foo-------"
public fn Serialize
値をシリアライズする。
- パラメータ
input
<Any>
- 戻り値
<String>
public fn Split
文字列を部分文字列に分割する。
- パラメータ
input
<String>
- パラメータ
separator
<String|Array[<String>]>
区切り文字として使用する文字列、もしくは文字列配列。
文字列を指定した場合は文字一つ一つが区切り文字となる。
- パラメータ
removeEmpty:
<BooleanClass>
空の配列要素を省略する場合は
true
、空の配列要素も含める場合はfalse
。既定値はtrue
。
- 戻り値
<Array[<String>]>
- 補足
removeEmpty
がfalse
の時、一致する区切り文字が一つの場合は空要素が省略される。( format "%\n" ((::StringUtilityStruct()).Split "foo.bar.baz" ".a" removeEmpty:false) -- 結果 #("foo", "b", "r", "b", "z") )
一致する区切り文字が二つ以上連続する場合、空要素は省略されない。
ただしこの場合もそれぞれの区切り文字が個別の空要素になるのではなく、一つの空要素にまとめられる。( format "%\n" ((::StringUtilityStruct()).Split "foo.bar.baz" ".b" removeEmpty:false) -- 結果 #("foo", "", "ar", "", "az") )
文字列配列の指定に対しても同様の法則が適用される。
( format "%\n" ((::StringUtilityStruct()).Split "foo.bar.baz" #(".b") removeEmpty:false) -- 結果 #("foo", "ar", "az") )
public fn SplitByLF
\n
の位置で部分文字列に分割する。
- パラメータ
input
<String>
- 戻り値
<Array[<String>]>
public fn ToCharArray
入力値の各文字を要素とする配列に変換する。
- パラメータ
input
<String>
- 戻り値
<Array[<String>]>
- 補足
空文字列の場合は空配列を返す。
public fn ToPascalCase
入力値をパスカル形式の文字列に変換する。
- パラメータ
input
<Any>
- 戻り値
<String>
- 補足
BooleanClass
、OkClass
、UndefinedClass
、UnsuppliedClass
のリテラルは全て小文字になる。
文字列リテラル中のエスケープシーケンスのエスケープ処理は行わない。
public fn Trim
先頭および末尾の空白文字を全て削除する。
- パラメータ
input
<String>
- 戻り値
<String>
public fn TrimEnd
末尾から指定した文字セットを全て削除する。
- パラメータ
input
<String>
- パラメータ
chars
<String>
削除する文字の文字列。
- 戻り値
<String>
public fn TrimStart
先頭から指定した文字セットを全て削除する。
- パラメータ
input
<String>
- パラメータ
chars
<String>
削除する文字の文字列。
- 戻り値
<String>
public fn StructName
- 戻り値
<Name>
public fn Dump
- パラメータ
indent:
<String>
- パラメータ
out:
<FileStream|StringStream|WindowStream>
出力先。既定値は
listener
。
- 戻り値
<OkClass>
public fn Equals
- パラメータ
obj
<Any>
- 戻り値
<BooleanClass>
- 補足
大文字と小文字を区別する。