84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
var str="测试~![闭嘴][憨笑]";需要将内容中的带[]中的字符串全部替换为:文字:的这种格式。实现效果为var str="测试~!:闭嘴::憨笑:";有大神指点下么 感谢其实是处理后端传过来的中文表情转化成可解析的图片表情的 感谢大家的答案 非常有帮助
var str="测试~![闭嘴][憨笑]";
var str="测试~!:闭嘴::憨笑:";
光阴似箭催人老,日月如移越少年。
不知道你对文字的定义是什么,姑且当成是非空且不含[、]字符的任意字符吧。只匹配成对的[],不匹配单独字符或者中间没有文字的配对。
[
]
[]
"测试~![闭嘴][憨笑]][]".replace(/\[([^\[\]]+)\]/g,':$1:') // result: // "测试~!:闭嘴::憨笑:][]"
哪里有 [文字] ?
str.replace(/[\[\]]/g,":")
"测试~![闭嘴][憨笑]".replace(/[\[\]]/g,':')
"测试~闭嘴".replace(/[[\u4e00-\u9fa5]+/g,":$&:") ":测试:~:闭嘴:"
不知道你对文字的定义是什么,姑且当成是非空且不含
[
、]
字符的任意字符吧。只匹配成对的
[]
,不匹配单独字符或者中间没有文字的配对。哪里有 [文字] ?