用HTML标记+ 替换关闭的HTML标记
Replacing closing HTML tags with HTML tag +
我试图用结束标记+换行符来替换通常的结束html标记,我在SO上发现了类似的帖子,没有一个真正帮助我完成我想要的任务。
</li>
将是</li>'n
<img some property />
将是<img some property />'n
我用以下功能在php中做到了这一点,效果很好:
public static function addLBinHTML($htmlcode){
$pattern= array('~(</.*?>)~','(/>)');
$replace= array('${1} Hallo 'n ','/>'n ');
return preg_replace($pattern, $replace, $htmlcode);
}
我正试图在JavaScript/jQuery中执行同样的操作,但在获取变量时失败了(在php regex ${1}
中)。
我试过用splitjoin和replace,我认为replace是正确的方法。
这是我得到的(我最后一次也是希望最接近的一次尝试)
function setLinebreaks(taID){
var strContent = $('#'+taID).val();
var regex = new RegExp("</.*?>", "gi");
strContent.replace(regex, "${1} 'n ")
.replace(/'/>/g,'/> 'n ');
console.log(strContent);
$('#'+taID).val(strContent);
}
提前感谢您的帮助
您必须捕获带括号的正则表达式,分配被替换的字符串并用$1
:替换${1}
var regex = new RegExp("(</.*?>)", "gi");
strContent = strContent.replace(regex, "$1 'n ")
.replace(/'/>/g,'/> 'n ');
或者,您可以简单地将replace
方法放入val
函数中。
相关文章:
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- HTML标记在脚本标记中工作
- 是否可以添加这行“;“照原样”;在HTML标记中
- 一个正则表达式,用于从JS中的HTML标记中删除id、样式和类属性
- 如果匹配项在特定的html标记中,则跳过regex匹配
- 使用 Pure JS 更改 HTML 标记名称
- 如何使用javascript选择字符串的部分,添加html标记或删除部分
- HTML标记,包含带引号的JavaScript代码中的引号
- 如何在JavaScript中创建打字机效果,这将考虑html标记规则
- 将c#视图模型转换为javascript模型时转义HTML标记
- Regex剥离具有特定属性的html标记
- 如何在不创建格式错误的HTML标记的情况下分解字符串
- HTML 标记未在 AngularJS ckEditor 中应用,而是在 Ediator 中显示 HTML 元素标记代码
- 如何在angularJS中运行for循环而不使用html标记
- Riot 每个构建 HTML 标记
- 用HTML标记+ 替换关闭的HTML标记
- 存储包含html标记的文本
- Regex以转义HTML标记
- 在html标记中序列化javascript代码
- JS来显示HTML标记