奇怪的问题,但我不会浪费时间解释为什么我需要这样做,只是我需要这样做。
我有以下内容:
<input type="radio" name="eq_9" id="eq_9_2" onclick="nextStepID_load(this);" value="Installer." title="912" /><label for="eq_9_2">Installer</label> <br />
我需要把它变成:
<button type="button" name="eq_9" id="eq_9_2" onclick="nextStepID_load('912');">Installer</button><br />
我正在使用 C#/asp.net(3.5 或更低版本)和 javascript 作为 PerformJS(在我弄清楚如何替换 html 之前,它是一个占位符)。
请注意,提供此信息的来源正在向我发送一个包含许多输入行的字符串。我需要用对其有效的信息替换每一行。
现在,我尝试添加 .Replace("","\">"); 它确实替换了单选标签,但显然使其在代码方面看起来很糟糕,并且不会删除标签或将标签内容放入标签之间。
我确信这可能最好通过正则表达式来解决,但我对正则表达式不太熟悉。我一直在玩弄 regexlib,看看我是否可以自己找出一个正则表达式...这是我到目前为止所拥有的,尽管我想我还很遥远。
string strRegex = @"<input type=""radio"" [\s]*=[\s]*""?[^\w_]*""?[^>]*>";
RegexOptions myRegexOptions = RegexOptions.IgnoreCase | RegexOptions.Multiline;
Regex myRegex = new Regex(strRegex, myRegexOptions);
string strTargetString = @"<input type=""radio"" name=""eq_9"" id=""eq_9_2"" onclick=""nextStepID_load(this);"" value=""Installer."" title=""912"" /><label for=""eq_9_2"">Installer</label> <br />";
string strReplace = "<button type="button"></button>";
return myRegex.Replace(strTargetString, strReplace);