我搜索了 Hi 和 low,但找不到我正在尝试做的事情的确切答案...
我想找到任何以 __ 开头和/__ 结尾的文本(即“在句子的中间 __this/__ 可以加下划线,而 __this(!) 也可以/__带下划线”)
。因此,它可以是一个或几个单词,其中包含任何字符,包括空格。可以有不同的单词和组合 - 在同一段落中 - 以 __ 开头并以/__ 结尾。
一旦找到,我想删除 __ 和/__ 并将它们替换为 HTML - 例如,一个 div 标签。 所以:
__sample string /__
应该是:
<div>sample string</div>
我知道我应该使用捕获组,但我找不到执行此操作的方法。
脚本:
.match
似乎匹配,并将结果放入数组中 - 但我如何返回字符串并替换找到的结果?
j查询:
.replace
应该适用于此,但我不确定如何引用找到的字符串并将其包围...
感谢阅读!
最佳答案
你不需要匹配但你需要String#replace
:
s='in the middle of the sentence __this/__ could be underlined, and __this(!) can also/__ be underlined';
var repl = s.replace(/__(.*?)\/__/g, "<div>$1</div>");
//=> in the middle of the sentence <div>this</div> could be underlined, and <div>this(!) can also</div> be underlined
关于javascript - 使用正则表达式查找字符串,并在新的周围文本中重用该字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22821149/