jquery - 为文本区域中的每个匹配项创建一个函数
问题描述
我有一个文本区域,其中的方括号中有一些表达式。我需要找到方括号内的所有表达式并为每个表达式添加一些代码(将它们包装在里面)
到目前为止,我只设法识别表达式,但我找不到一种方法来运行循环函数来处理它们(我正在考虑一个“每个”函数)html代码示例:
<div id="myDiv">
<textarea>
everyone [David] wants to travel the world [Paris] with a car [Fiat]
</textarea>
</div>
到目前为止我的 jQuery 代码:
$(document).ready(function() {
var myText = $('#myDiv').text();
var regex= /\[([^\]]*)\]/;
var result = myText.match( /\[(.*)\]/ );
});
从这里开始,我尝试的每个功能都不起作用……有什么建议吗?
解决方案
我建议检查您的正则表达式,如果它返回正确的匹配。它可能没有返回您期望的正确匹配。
$(document).ready(function() {
var myText = $('#myDiv').text();
var result = myText.replace(/\[/g, '<span>').replace(/\]/g, '</span>');
$('#output').append(result);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="myDiv">
<textarea>
everyone [David] wants to travel the world [Paris] with a car [Fiat]
</textarea>
<div id="output"></div>
</div>
上面的代码将匹配 [] 中的文本并创建一个列表并将其附加到具有 id 输出的 div 中。从问题中无法判断这是否是您的意思wrap them inside
。
推荐阅读
- html - 避免使用多个 ul 来创建“对角线”列表
- html - 在端口 443 而不是 80 上加载站点
- javascript - 后续重新挂载时不会调用 Redux 操作
- ios - Sorting dates with swift
- unit-testing - kotlin 安卓。断言 assertEquals widtch Pair.Failed 测试
- python-3.x - Using matplotlib.pyplot.clabel to add labels with a transparent background
- c++ - where did the memory go?
- assembly - TASM 步进电机控制
- javascript - 是否有库或方法来实现“背景拖动”?
- ruby - 如何让这个红宝石块将每个单独的哈希添加到数组中,而不是多次添加一个哈希?