我在vistal studio和this site中尝试了很多语法,但没有任何帮助。
表达式为_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
个数字,并将其替换为隐藏字段中的值。 < / p>
我该怎么做?
答案 0 :(得分:0)
/_ct\d*_/
这是您给定问题的正则表达式语法。试试这个
答案 1 :(得分: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);