C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: 正規表現:文字列→メタ文字 変換について


(過去ログ 126 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■74861 / inTopicNo.1)  正規表現:文字列→メタ文字 変換について
  
□投稿者/ むぅ (12回)-(2015/02/03(Tue) 15:04:13)

分類:[C#] 

2015/02/03(Tue) 15:10:17 編集(投稿者)

Win7 32/64bit VS2010 C#
お世話になります。

ある文字列を正規表現で文字列検索に使えるようメタ文字を変換したいのですが、
適切に変換できる関数などはないでしょうか。
例)
 abc1++; → abc1\+\+;
 a*1 → a\*1



以上、よろしくお願いしますm(__)m

引用返信 編集キー/
■74863 / inTopicNo.2)  Re[1]: 正規表現:文字列→メタ文字 変換について
□投稿者/ Hongliang (275回)-(2015/02/03(Tue) 15:20:30)
Regex.Escapeメソッドはいかがでしょうか?
引用返信 編集キー/
■74864 / inTopicNo.3)  Re[1]: 正規表現:文字列→メタ文字 変換について
□投稿者/ shu (686回)-(2015/02/03(Tue) 15:29:04)
No74861 (むぅ さん) に返信

検索条件文字列なのでしょうか?検索される文字列なのでしょうか?

検索される文字列ならそんなことをする必要はないと思うので違うのでしょうが。

検索条件文字列ならそれは繰り返しの為に指定したのかそうでないのか
はっきりしていないと無理かと。繰り返しとして使わないのならあまり
正規表現指定出来る意味がないのでは?例示したような1+とかa*のような
正規表現は条件として有用ではないのでルールを決めば可能かもしれません。
そのルールにしたがった正規表現で置換をしてあげるのもよいかも。


引用返信 編集キー/
■74865 / inTopicNo.4)  Re[2]: 正規表現:文字列→メタ文字 変換について
□投稿者/ むぅ (14回)-(2015/02/03(Tue) 15:34:48)
Hongliang さん、shuさん、ご返信、ありがとうございます。

>検索条件文字列ならそれは繰り返しの為に指定したのかそうでないのか
リテラル文字として扱いたいという意味です。質問時に言葉がでてこず、
意図が伝わりにくかったと思います。

Hongliang さんに教えていただいた関数で対応できました。
どうもありがとうございましたm(__)m。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -