我需要用 MIN-HEIGHT 替换 HEIGHT 标签,但我很难从替换中排除开头引号。
这是我的正则表达式:
[^-](height:)
这是我的替换:
html = regex.Replace(html, "min-height:");
据我所知,这应该匹配“高度:”而不是“最小高度:”,但是当我进行替换时,它也会替换紧接在高度之前的字符:。
所以 style="HEIGHT: 变成 style=MIN-HEIGHT:
我如何在替换中保持开头的引号同时满足高度:比如说,样式标签的第三个属性而不是引号(例如 style="WIDTH: 200px; HEIGHT: 400px"?
示例输入为:
style="高度:500px;" 样式 =“宽度:200 像素;高度:500 像素” style="宽度:200px;高度:500px"
预期输出:
style="最小高度:500px;" style="宽度:200px;最小高度:500px" style="WIDTH: 200px;MIN-HEIGHT: 500px"
当前输出:
style=最小高度 500px;" style="WIDTH: 200px;MIN-HEIGHT 500px" style="WIDTH: 200pxMIN-HEIGHT 500px"
最佳答案
(?<!-)(height:)
试试这个。使用 0 宽度断言而不是捕获。参见演示。lookbehind
将确保 -
后面没有 height
捕获。如果 height
是 case-sensitive
i
修饰符
关于C# Regex 替换样式 HEIGHT 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28363619/