替换& # 39;[& # 39;8个字符']'与空白

本文关键字:空白 替换 8个 字符 | 更新日期: 2023-09-27 18:02:09

我试图用正则表达式替换字符串中的某些内容,但它不工作。

我试图替换任何出现的 [ 后面跟着8字符,并以 ]

结束

。替换 [F2283D02] 空白

替换& # 39;[& # 39;8个字符']'与空白

我想你正在看十六进制字符串所以你的正则表达式应该是

'[[0-9A-F]{8}']
^            ^ escapes required as [ and ] are regex-metacharacters
string result = Regex.Replace(input, @"'[[^']]{8}']", "");

[查找开头的'['

[^]]{8}查找非']'的8个连续字符

the]查找关闭的']'

 string input = "Replace [fbzdkdf] with empty";
 input = Regex.Replace(input, @"'['w{8}']","");
 Console.WriteLine(input);

输出:替换为空

解释

[:反斜杠转义regex中的肉字符[。
'w{8}:匹配任意8个字符。
]:转义元字符]

  • 转义表示关闭下一个字符的特殊含义。反斜杠进行转义。



别忘了用

using System.Text.RegularExpressions;

试试下面的表达式:

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

看到沙箱。

你试过了吗?你试过了吗?

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

一些解释:

.{8} -任意8个字符

(?<='[)(?=']) -我们寻找被'[]'包围的字符,但我们不需要找到括号本身,只需要知道这些字符是否在括号中

Rubular