正则匹配求解?

caoailin 2004-11-19 02:58:45
有这样一段字符串
Str := "\cf1 my \cf2 name \cf3 is \cf4 : \'b2\'dc\'b0\'ae\'c1\'d6"
现需要这样匹配
\cf数字 与 \cf数字 中间的字符
匹配后 结果为
my name is : \'b2\'dc\'b0\'ae\'c1\'d6
进行第二次匹配
把(\'字符{2}\'字符{2}) 换成中文 也就是 换后结果为
my name is : 曹爱林
我试了很多种方法 但都不能完全匹配 哪位高手指教一下谢谢!!
...全文
68 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
caoailin 2004-11-19
  • 打赏
  • 举报
回复
啊 谢谢 
 其实用JS能实现 我用的是Delphi RegExpr控件
实现起来有点难 好像它没有像replace这样的函数。。
再次谢谢!!
汉字编码是 双字节 两个16进制组成 如 b2dc 为曹
可转换为10进制 再转换成字符就行了。
shyslysky 2004-11-19
  • 打赏
  • 举报
回复
var str="\\cf1 my \\cf2 name \\cf3 is \\cf4 : \\'b2\\'dc\\'b0\\'ae\\'c1\\'d6"
var destStr=str.replace(/\\cf\d+/g,"").replace(/\\'(\w{2})\\'(\w{2})/g,"$1"+"$2")
alert(str+"\n"+destStr)

不知道你的编码和中文的转换规则是什么?
xjdawu 2004-11-19
  • 打赏
  • 举报
回复
建议Str.split(":")后再匹配
JK_10000 2004-11-19
  • 打赏
  • 举报
回复
<script language=javascript>

var str="\\cf1 my \\cf2 name \\cf3 is \\cf4 : 曹爱林";
alert(str);
alert(str.replace(/\\cf\d?\s?/ig,""));

</script>

87,901

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧