差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
dotnet:regex [2009/03/02 19:07] – ともやん | dotnet:regex [2019/05/18 02:23] (現在) – 外部編集 非ログインユーザー | ||
---|---|---|---|
行 89: | 行 89: | ||
[C++] | [C++] | ||
<code cpp> | <code cpp> | ||
+ | using namespace System; | ||
+ | using namespace System:: | ||
+ | |||
+ | static void IsMatchFileName(String^ fileName, String^ pattern) | ||
+ | { | ||
+ | if (Regex:: | ||
+ | RegexOptions:: | ||
+ | { | ||
+ | Console:: | ||
+ | " | ||
+ | fileName, pattern); | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | Console:: | ||
+ | " | ||
+ | fileName, pattern); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | int main(array< | ||
+ | { | ||
+ | String^ fileName1 = " | ||
+ | String^ fileName2 = " | ||
+ | // 半角ファイル名の正規表現 | ||
+ | const String^ TARGET_FILENAME_REGEX = " | ||
+ | // 全角ファイル名の正規表現 | ||
+ | const String^ TARGET_FILENAME_MULTI_BYTE_REGEX = " | ||
+ | |||
+ | // ファイル名のパターンマッチ | ||
+ | IsMatchFileName(fileName1, | ||
+ | IsMatchFileName(fileName2, | ||
+ | IsMatchFileName(fileName1, | ||
+ | IsMatchFileName(fileName2, | ||
+ | |||
+ | return 0; | ||
+ | } | ||
</ | </ | ||
行 97: | 行 134: | ||
ファイル名: | ファイル名: | ||
ファイル名: | ファイル名: | ||
+ | </ | ||
+ | |||
+ | ===== グループ化構成体を利用した値の抽出 ===== | ||
+ | [VB] | ||
+ | <code vbnet> | ||
+ | Imports System | ||
+ | Imports System.Text.RegularExpressions | ||
+ | |||
+ | Module SampleAppVB | ||
+ | Sub Main() | ||
+ | Dim fileName1 As String = " | ||
+ | Dim fileName2 As String = " | ||
+ | |||
+ | ' グループ名定義 | ||
+ | Const REGEX_GROUP_DATE As String = " | ||
+ | Const REGEX_GROUP_COUNTER As String = " | ||
+ | ' ファイル名の正規表現 | ||
+ | Const TARGET_FILENAME_REGEX As String = _ | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | |||
+ | ' パターンマッチ情報を取得 | ||
+ | Dim mt1 As Match = Regex.Match(fileName1, | ||
+ | |||
+ | ' 日付、および、カウンタを抽出して表示 | ||
+ | Console.WriteLine( _ | ||
+ | " | ||
+ | fileName1, _ | ||
+ | mt1.Groups(REGEX_GROUP_DATE).Value, | ||
+ | mt1.Groups(REGEX_GROUP_COUNTER).Value) | ||
+ | |||
+ | ' パターンマッチ情報を取得 | ||
+ | Dim mt2 As Match = Regex.Match(fileName2, | ||
+ | |||
+ | ' 日付、および、カウンタを抽出して表示 | ||
+ | Console.WriteLine( _ | ||
+ | " | ||
+ | fileName2, _ | ||
+ | mt2.Groups(REGEX_GROUP_DATE).Value, | ||
+ | mt2.Groups(REGEX_GROUP_COUNTER).Value) | ||
+ | End Sub | ||
+ | End Module | ||
+ | </ | ||
+ | |||
+ | [実行結果] | ||
+ | < | ||
+ | ファイル名: | ||
+ | ファイル名: | ||
</ | </ |