0

我在 vista studio 和这个站点中尝试了许多语法,但没有任何帮助。表达_ct_(anyDigitHere)_ 就像

 adkasjflasdjfsdf asdfkl sjfdsf _ct150_ asdfasd // so it would match this _ct150

any thing here doens't matter Random stuff..afd a&r9qwr89 ((
_ct415487_ anything here doesn't matter // this will match _ct415487_

基本上任何_ctAndAnyNumberHere_(开头和结尾的下划线)
我试过的一对^*(_ct)(:z)(+_)+*$^*(_ct[0-9]+_)+*$. 但没有任何帮助!

编辑 感谢您的回复。那确实有效,但我现在的问题是用隐藏字段值替换那些匹配的元素..说..

如果隐藏字段中的值是1数字(0-9 之间的任何值),我必须last从匹配的表达式中获取数字并将其替换为隐藏字段中的值。

如果隐藏字段中的值是2数字(0-99 之间的任何值),我必须last two从匹配的表达式中获取数字并将其替换为隐藏字段中的值。

所以,基本上..

如果隐藏字段中的值是n数字,我必须last n从匹配的表达式中获取数字并将其替换为隐藏字段中的值。

我怎么做?

4

2 回答 2

0
/_ct\d*_/

这是您给定问题的正则表达式语法。试试这个

于 2012-09-06T10:56:10.347 回答
0

我不知道您在说什么语言的视觉工作室,但这应该可行:

_ct\d+_

或这个:

_ct([0-9]+)_

编辑:

Regex rg = new Regex("_ct([0-9]+)_");
string text = "any thing here doens't matter Random stuff..afd a&r9qwr89 ((_ct415487_ anything here doesn't matter";
var match = rg.Match(text).Groups[1].Value;
int sizeHiddenField = HiddenField1.Value.Length;

var newString = text.Replace(match, match.Substring(0, match.Length - sizeHiddenField) + HiddenField1.Value);
于 2012-09-06T10:56:46.450 回答