エスケープ文字を「\」としたとき、エスケープされていないセミコロンを空文字に置換したいと思い次のようなパターンを指定したのですが「未終了な[]です。」のようなエラーが出てしまいます。
パターン regex.Replace(str, "([^\\]);", "\1")
やりたいこと
変換前 : str = "てすと;テスト\;テスト"
返還後 : "てすとテスト\;テスト"
↑ここのセミコロンだけを消したい
秀丸・K2Editor では予定通りの動作をするのですが、Regex クラスのパターンの指定が悪いのでしょうか?
わかる方がいましたらご教授お願いします。
C の文字列で \ を示すのは \\ です
RegexクラスとはどこのRegexクラスですか?
.NET FrameworkのSystem::Text::RegularExpressions::Regexであれば,
多分さんの書かれたことの他に,置き換え先が\1では問題になります。
1番目のグループへ置き換えるのは,
http://www.microsoft.com/japan/msdn/library/ja/cpgenref/html/cpconsubstitutions.asp
にあるとおり,$1だからです。
まぁ,この場合,置換構成体を使うよりも,
http://www.microsoft.com/japan/msdn/library/ja/cpgenref/html/cpcongroupingconstructs.asp
のゼロ幅の負の後読みアサーションを使った方がよいでしょう。
先頭にある;に,[^\\];はヒットしません。
#S"(?<!\\\\);"→System::String::Emptyという置換。
Yuo さんありがとうございます。
また、質問が不十分ですみませんでした。
私が知りたかったのは .NetFramework の Regex クラスでした。
自分的には多少正規表現を知っていると思っていたのですがまだまだ奥は深いようですね・・・
後読みアサーションは知りませんでした。もう少し正規表現も勉強しようと思います。
ありがとうございました。
※ 解決 タイトル 件数 最終
更新日 最終
発言者
gifの表示 1 2005/01/29 origi
gifの表示 1 2005/01/29 origi
解決 Regex の正規表現について 4 2005/01/28 koo
解決 map を char* で参照するには 5 2005/01/28 origi
MSFlexGridのクラスを追加するには? 1 2005/01/28 GOジャグ
解決 ウィザードバーのメンバ関数 9 2005/01/28 名古屋
解決 フレームってないんですか? 9 2005/01/27 masa
SNMPv2 Trapの受信方法 1 2005/01/27 くっき〜
解決 キャビネットファイルを作るには 18 2005/01/26 初心者
自作OCXを表示したいんですが
Visual C++ Q & A 掲示板
[戻る] [使用上の注意] [新規質問] [過去のフォルダ一覧]
--------------------------------------------------------------------------------
掲示板の全トピックから単語: を
※印のトピックを
過去 日分のトピックを /
※ 解決 タイトル 件数 最終
更新日 最終
発言者
gifの表示 1 2005/01/29 origi
gifの表示 1 2005/01/29 origi
解決 Regex の正規表現について 4 2005/01/28 koo
解決 map を char* で参照するには 5 2005/01/28 origi
MSFlexGridのクラスを追加するには? 1 2005/01/28 GOジャグ
解決 ウィザードバーのメンバ関数 9 2005/01/28 名古屋
解決 フレームってないんですか? 9 2005/01/27 masa
SNMPv2 Trapの受信方法 1 2005/01/27 くっき〜
解決 キャビネットファイルを作るには 18 2005/01/26 初心者
自作OCXを表示したいんですが 4 2005/01/26 たく
解決 UDPでの送信処理 4 2005/01/25 GOジャグ
解決 UDPでの送信処理 2 2005/01/25 GOジャグ
プログレスバーのキャンセルボタンを押すには? 2 2005/01/25 akey
解決 ディレクトリ選択ダイアログに選択されたディレクトリを表示するには? 5 2005/01/25 マーチ
ボタンの上にマウスポインタがきたときにボタンのキャプションを取得して表示するには? 6 2005/01/25 みい
解決 UDPでの受信処理 5 2005/01/25 GOジャグ
解決 ビットマップを使用して波形の表示をするには 9 2005/01/25 YANA
解決 WTLでシンプルリバーのバンドのドラッグの通知を受け取るには? 3 2005/01/25 山田
ダイアログボックスのエディットコントロールを横に並べて、垂直方向に同時にスクロールさせるには? 1 2005/01/24 どら
VC7で可変個引数のマクロを作成するには? 3 2005/01/23 代替案
C++で画像にフーリエ変換を施すには? 7 2005/01/22 准
解決 VC++.NET 2002の出力windowに文字を表示するには? 3 2005/01/22 kossy
解決 String型について 11 2005/01/22 魔法使いの見習い
アンチ入り画像を綺麗に表示するには? 2 2005/01/22 SAI
解決 HDCの制限 7 2005/01/21 瀬戸っぷ
解決 実行エラー 9 2005/01/21 初心者
解決 RegEnumKeyExについて 3 2005/01/21 どら
解決 レジストリのアンインストール情報に登録されているアプリケーションをすべて取得するには? 4 2005/01/20 どら
ウィンドウを常に最大化にしておきたい。 2 2005/01/20 める
解決 メタファイル(EMFファイル)を解析したいのですが 4 2005/01/20 MixLang初心者
解決 システムトレイでのメニュー? 3 2005/01/20 役満太郎
解決 マウスドラッグしたまま領域外に出たのを調べるには 3 2005/01/19 kossy
解決 サービスプログラムからODBCを利用してデータベースに接続するには? 2 2005/01/19 あすか
金額をフォーマットするには? 6 2005/01/19 YuO
解決 Stringクラスをキャストするには? 5 2005/01/19 ひで
解決 APIを用いてODBCデータソース登録を行うには? 3 2005/01/18 ドゥーエ
解決 画面の制御を移すには? 2 2005/01/18 ひで
解決 VC++6.0でAPM(Aldus Placeable Metafile)形式のWMFデータを作成するには? 2 2005/01/18 VC/Cad初心者
ソケット通信でタイムアウトするには? 4 2005/01/18 (noname)
dll から呼び出し側のアプリケーションポインタをとるには? 3 2005/01/17 てつや
解決 構造体を持つ構造体の定義時での初期化 7 2005/01/17 kossy
アドレス帳 2 2005/01/17 RAPT
自作の子ウィンドウを2つ以上表示するには? 10 2005/01/16 Ban
ウィンドウプロシージャを共有したい 4 2005/01/16 シャノン
プロセスが使用中のファイルを知るには? 2 2005/01/16 シャノン
解決 DoModal関数で呼び出されたダイアログのListViewにカラムを追加するには? 2 2005/01/16 ドゥーエ
キー入力ができなくなる 1 2005/01/16 chose
ISAPI filter でHTMLのパラメータを取得する方法について 1 2005/01/14 がいすか
解決 CreateProcessについて 5 2005/01/14 けい
ClassViewタブのツリーにクラスが表示されない?? 6 2005/01/14 Ban
ネットワークフォルダーに関して 1 2005/01/13 ss
解決 デバッグできません 4 2005/01/13 SHUN
エディットボックスで 座標を格納するには? 2 2005/01/13 RAPT
GNU regex 正規表現を使用するには? 10 2005/01/12 tetrapod
行単位でのファイル読み込みするには? 3 2005/01/12 tetrapod
解決 vectorの中身表示について 4 2005/01/11 ますたー
解決 リストビューをソートするには? 5 2005/01/11 kensaku
解決 jpeg表示するには?(基本的なクラスの使い方) 16 2005/01/11 あつし
解決 コントロールを引数にするには? 5 2005/01/11 kensaku
プログラミングの問題、分かりますか? 24 2005/01/10 monkey
EDITBOXの移動 2 2005/01/10 YuO
解決 文字列の半角と全角の区別 5 2005/01/08 origi
解決 boostの正規表現を使用するには? 13 2005/01/07 デメ
解決 API関数の呼び出しを監視するには 6 2005/01/07 MixLang初心者
解決 バッチファイル・実行ファイルなどを他のユーザで実行するには? 7 2005/01/07 どら
解決 ドライブの有効、無効 5 2005/01/06 ひで
XMLをSQL文で読む 2 2005/01/06 通りすがり
解決 ダイアログなどで入力したアカウントが特定のローカルグループに所属しているかを確認するには? 5 2005/01/06 どら
解決 xmlファイルの書込みについて 2 2005/01/05 hyde
解決 モードレスダイアログベース プログラムでタイトルバーに文字を表示するには? 6 2005/01/05 どら
SHFileOperationを利用してWindowsディレクトリにファイルをコピーするには? 3 2005/01/05 どら
MFCにて動画再生中に動画のRGB値を取得するには? 2 2005/01/05 ボコノン教徒
解決 色分け 14 2005/01/04 初心者
解決 ショートカットの「作業フォルダ」を設定するには? 2 2005/01/04 どら
解決 テキストファイルの最初の行に文字列を追加→削除するには? 3 2005/01/01 どら
解決 bitmapの透過 7 2004/12/31 origi
効果音が出せるようにするには? 6 2004/12/30 伊井芳男
プログラムの実行結果をダイアログに表示するには 2 2004/12/29 RAPT
ファイルを開く画面の表示の変更について 7 2004/12/29 シャノン
解決 ディレクトリのコピーにSHFileOperationを利用するとき 8 2004/12/29 シャノン
ディレクトリ名を指定してファイル名を取得する関数は? 4 2004/12/28 なーめ
ダイアログのサイズ変更について 2 2004/12/27 monkey
pdfでCCITTFaxDecodeの使用方法 1 2004/12/27 yoshiki
関数の数を数える関数について 3 2004/12/26 (noname)
解決 継承を使って効率よくプログラムするには? 3 2004/12/25 chose
ダイジェスト認証付きHTTPサーバ負荷ツールを作成するには? 7 2004/12/25 なーめ
解決 UDM_SETPOSについて 4 2004/12/25 XiX
解決 ファイルを開く時のディレクトリーの指定について 3 2004/12/24 パウダー
解決 プロセスの終了処理をするには 5 2004/12/24 cocomo
解決 二重起動時のメッセージボックスについて 3 2004/12/24 ひで
解決 文字列の中の単語検索 6 2004/12/24 kensaku
エディットボックスの改行回数の上限は? 5 2004/12/23 シャノン
フォルダ選択ダイアログについて 5 2004/12/22 瀬戸っぷ
AVI2.0 (OpenDML) 1 2004/12/22 ERS
解決 指定行からのファイル追記書込み 8 2004/12/21 ひで
解決 アイコンの非表示 3 2004/12/21 ひで
解決 プログラムからプロセスを実行するには? 4 2004/12/21 YuO
解決 Erro 14 2004/12/19 初心者
WM_LBUTTONUPメッセージについて 29 2004/12/18 svdav
string型の==での比較について 17 2004/12/18 dsffs
過去のフォルダ一覧
[200109] [200111] [200112] [200201] [200202] [200203] [200204] [200205] [200206] [200207] [200208] [200209] [200210] [200211] [200212] [200301] [200302] [200303] [200304] [200305] [200306] [200307] [200308] [200309] [200310] [200311] [200312] [200401] [200402] [200403] [200404] [200405] [200406] [200407] [200408] [200409] [200410] [200411] [200412] [200501]
--------------------------------------------------------------------------------
Programming Library
ツイート | ![]() |