假设有一大段文本,转换规则如下:
>
**标题**
至
:脸红:
至
如何在一次遍历中进行转换?
使用不同的捕获组在1个正则表达式中捕获不同的模式,并使用替换功能检查不同的捕获组:
var input = '**Hey** Oh you! :blush:';
document.write(input.replace(/\*\*([^*]*)\*\*|:(happy|blush):/ig, function(match, title, smiley) {
if (title != undefined) {
return '<h2>' + title + '</h2>';
} else if (smiley != undefined) {
return '<img class="emoji" title="blush" src="/img/' + smiley + '.png" />';
}
}));
您可以尝试以下方法:
<div id="replace">**title**some text :blush: some link </div>
var str= $("#replace").html();
str = str.replace("**title**", "<h1>title</h1>");
str = str.replace(":blush:", "<img class="emoji" title="blush" src:"/img/blush.png"/>");
$("#replace").html(str);
做这类事情的最好方法是正则表达式——它是每种语言中用于这类任务的非常优化的机制。
在javascript中,根据您的示例:
>>> "**title** qweqwe **foo** ololo **bar**".replace(/(\*\*(\w+)\*\*)/g, "<h1>$2</h1>")
"<h1>title</h1> qweqwe <h1>foo</h1> ololo <h1>bar</h1>"
和
":blush: qweqwe :tongue: ololo :smile:".replace(/(\:(\w+)\:)/g, '<img class="emoji" title="$2" src:="/img/$2.png"/>')
"<img class="emoji" title="blush" src:="/img/blush.png"/> qweqwe <img class="emoji" title="tongue" src:="/img/tongue.png"/> ololo <img class="emoji" title="smile" src:="/img/smile.png"/>"
塔达!
问题内容: 将数字转换为字符串的“最佳”方法是什么(就速度优势,清晰度优势,内存优势等而言)? 一些例子: 问题答案: 像这样: 实际上,即使我通常是为了简单方便而这样做,但 对于原始速度而言 ,似乎出现了1000多次迭代,但 对于 根据上述JSPerf测试最快: 应该注意的是,当您认为速度差异可以在0.1秒内进行1百万次转换时,速度差异并不是太大。 更新: 速度因浏览器而异。在Chrome中,根
我有一个对象数组(客户),具有组件:first_Name 我已经检查过名字和姓氏确实只包含一个字母字符串,每个字符串的第一个字母都是小写字母。intellisense给我的错误是“字符不能被解除引用”
问题内容: 将格式化的字符串转换为日历的最简单,最简单的方法是什么?例如将“ dd.MM.yyyy”添加到日历? 问题答案: DateFormat df = new SimpleDateFormat(“dd.MM.yyyy”); Calendar cal = Calendar.getInstance(); cal.setTime(df.parse(stringInstanceRepresentin
我一直在研究如何将字符串转换为Rust中的大写字母。到目前为止,我找到的最理想的方法是: 有没有不那么冗长的方法? 注意:这个问题是专门针对Rust 0.9的。在提问时还有另一个相关的答案,但它是针对Rust 0.8的,它有显著的语法差异,因此不适用。
本文向大家介绍在Python3中将字符串转换为字节的最佳方法,包括了在Python3中将字符串转换为字节的最佳方法的使用技巧和注意事项,需要的朋友参考一下 要将字符串转换为字节,有多种方法, 方法1:使用encode()方法 输出结果 在python3中,第一个参数encode()默认为'utf-8'。据推测,这种方法也更快,因为默认参数在C代码中导致NULL。 方法2:使用bytes()构造函数
问题内容: 假设我有两个或两个以上相同长度的列表。遍历它们的好方法是什么? ,是列表。 要么 还是我缺少任何变体? 使用一个相对于另一个有什么特别的优势吗? 问题答案: 通常的方法是使用: 这将停止两个iterables时较短且耗尽。另外值得注意的是:(仅适用于Python 2)和(适用于Python 3)。