1

文字列内の何かを通常の式に置き換えようとしていますが、うまくいきません。

の後に8文字が[続き、最後が]

[F2283D02]たとえば、空白スペースに置き換えます。

4

5 に答える 5

3

あなたは16進文字列を見ていると思うので、正規表現は次のようになります

\[[0-9A-F]{8}\]
^            ^ escapes required as [ and ] are regex-metacharacters
于 2013-03-05T07:42:47.460 に答える
2
string result = Regex.Replace(input, @"\[[^\]]{8}\]", "");

[ は冒頭の '[' を探します

[^]]{8} は、']' ではない 8 つの連続した文字を探します

] は、終了 ']' を探します

于 2013-03-05T07:43:46.760 に答える
1
 string input = "Replace [fbzdkdf] with empty";
 input = Regex.Replace(input, @"\[\w{8}\]","");
 Console.WriteLine(input);

output : 空に置き換えます

説明

[ : バックスラッシュは正規表現の肉文字 [ をエスケープします。
\w{8} : 任意の 8 文字に一致します。
] : エスケープ メタ文字 ]

  • エスケープ手段 次の文字の特別な意味をオフにします。バックスラッシュはエスケープを行います。



使用することを忘れないでください

using System.Text.RegularExpressions;
于 2013-03-05T07:55:30.113 に答える
0

次の式を試してください。

@"\[([a-zA-Z0-9]{8})\]"

サンドボックスを参照してください。

于 2013-03-05T07:44:09.723 に答える
0

何を試しましたか?disを試しましたか:

(?<=\[).{8}(?=\])

一部の説明:

.{8}- 任意の種類の 8 文字

(?<=\[)そして(?=\])- 「[]」で囲まれた文字を探しますが、括弧自体を見つける必要はありません。それらの文字が括弧内にあるかどうかを知る必要があるだけです

紅斑

于 2013-03-05T07:45:40.637 に答える