Каким будет выражение в регулярном выражении (PoundSomenumberSemiColonPound) (aka #Number; #)? Я использовал это, но не работалregex.replace #number; #
string st = Regex.Replace(string1, @"(#([\d]);#)", string.Empty);
Каким будет выражение в регулярном выражении (PoundSomenumberSemiColonPound) (aka #Number; #)? Я использовал это, но не работалregex.replace #number; #
string st = Regex.Replace(string1, @"(#([\d]);#)", string.Empty);
Вам не нужен класс символов при использовании \d
, и, как указывает SLaks, вам нужно +
для соответствия одной или нескольким цифрам. Кроме того, поскольку вы ничего не захватывая круглые скобки избыточны тоже, так что-то вроде этого следует сделать это
string st = Regex.Replace(string1, @"#\d+;#", string.Empty);
Вы ищете #\d+;#
.
\d
соответствует одной цифровому символу+
соответствует одному или более из предшествующих символов.Вам может понадобиться, чтобы избежать #
символов, они обычно интерпретируются как маркеры комментария, в дополнении к @SLaks комментарию об использовании +
разрешить несколько цифр
(\x23\d+\x3B\x32)
#
и /
оба используются вокруг шаблонов, таким образом, проблема. Попробуйте использовать выше (обычно, когда я прихожу к неприятностям с конкретными персонажами, я возвращаюсь к шестигранному факсимиле (asciitable.com имеет хорошую ссылку)
EDIT Забыли группы для замены.
EDITv2 ниже работал для меня:
String string1 = "sdlfkjsld#132;#sdfsdfsdf#1;#sdfsdfsf#34d;#sdfs";
String string2 = System.Text.RegularExpressions.Regex.Replace(string1, @"(\x23\d+\x3B\x23)", String.Empty);
Console.WriteLine("from: {0}\r\n to: {1}", string1, string2);;
Выход:
from: sdlfkjsld#132;#sdfsdfsdf#1;#sdfsdfsf#34d;#sdfs
to: sdlfkjsldsdfsdfsdfsdfsdfsf#34d;#sdfs
Press any key to continue . . .
До сих пор не работает Regex.Replace (string1, @ "(# ([\ d +]); #) ", string.Empty); – 2010-11-29 17:50:38
не использовать []. Вам нужно Regex.Replace (string1, @ "# \ d +; #", string.Empty); – 2010-11-29 17:53:32
Не используйте квадратные скобки (или, по крайней мере, помещайте `+` из них) – bdukes 2010-11-29 17:53:45