2009-07-01 6 views
0
string patname ="enter pat name"; 
patname = "text"; 
patname = " text pat"; 

こんにちは、上記のステートメントでビジュアルスタジオの正規表現を使用して検索したいと思います。私はPat{([^a-zA-Z]|$)}を使ってみましたが、2行目で本当に欲しくないものも検索します。私はパットが "任意の文字でフォローしてからパット"から始まる文字列値内で検索するようにしたいと思います。 THTを行う正規表現を使用して単一行で単語を検索するには

+0

コードなど。[文字列s =「いくつかのテキスト」+ patname +「他のテキスト」;]単純な正規表現は+」を見つけるように、また、あなたの問題が発生しますpatname + "を返してtrueを返します –

答えて

0

のようなものでなければなりません:?。。?正規表現で野生の文字を表し、*は任意の文字、単語の境界を使用する方法についてどのように

0

の発生の任意の数を意味する

/.*pat.*/ 

Visual Studioで

<pat> 

再読み込みあなたの質問あなただけなので

"[^"]*<pat>[^"]*" 

は、おそらくより良い表現である文字列内の「パット」をお勧めしますが。

2

ソースコード内の文字列で「pat」を探したいのですか?それにはいくつかの問題があります...特に:

1:引用符を扱うことは厄介です(変数とは対照的に文字列の部分を区切ることです)。特に2種類のエスケープがあります。 @「」「」と「\」」

2:リテラル文字列逐語的には、パットが次の行にあることが、まだ文字列の可能性:

string s = @"abc 
def pat ghi"; 

しかし、ラフ検索、のようなもの:私はあなたを理解している場合

\".+pat 

0

を助けるかもしれないが正しくあなたが探している正規表現が単に

です
\".+\bpat\b 

あなたは全体のラインを明確にするために使用

.*\".+\bpat\b.* 

見つけることがしたい場合:\bの平均単語の境界を。 「パット」を単語の一部にしたい場合は、それらを削除します。

0

それは動作しません、私は文字列の値の中にpatを検索する必要がありますので、検索shudはsomethign \ "[az] [pat]のように始まると思います。しかし、問題はpatを内側に)「パットの名前を入力し、」

+0

なぜでしょうか?\" [az] [pat]は "p/a/tのいずれかの後に単一のアルファが続く引用"を意味します。それはあなたが意味するものではなく、元の質問であなたが求めたものではありません。それはまた、あなたがここに言及していることは明らかではありません。 –

0

"[:a ]*<pat>[:a ]*"を試してみてください

関連する問題