大家都知道由java向html传递数据时,它会进行转义,什么叫转义呢。比如说java中是&,那么在html中就变成了&了,下面我列举一般常用的转义特殊字符
最常用的字符实体 Character Entities
显示 | 说明 | 实体名称 | 实体编号 |
---|---|---|---|
半方大的空白 |   |   | |
全方大的空白 |   |   | |
不断行的空白格 | |   | |
< | 小于 | < | < |
> | 大于 | > | > |
& | &符号 | & | & |
" | 双引号 | " | " |
© | 版权 | © | © |
® | 已注册商标 | ® | ® |
™ | 商标(美国) | ™ | ™ |
× | 乘号 | × | × |
÷ | 除号 | ÷ | ÷ |
JavaScript转义符
转义序列 | 字符 |
---|---|
\b | 退格 |
\f | 走纸换页 |
\n | 换行 |
\r | 回车 |
\t | 横向跳格 (Ctrl-I) |
\' | 单引号 |
\" | 双引号 |
\\ | 反斜杠 |
好了,说说今天我遇到的问题。我在后台java中得到图片的路径,其中包含了&,那么到了前端后,你会发现这个图片路径还是有的,但就是不显示该图片。细心找找就会发现,&后面多了个amp;其实也就是原来的&被转义成了&了,导致无法显示。那怎么解决呢,在java中,我们如果预先已经知道语句中有哪些特殊字符被转义成了转义字符,比如这里的&变成了&那么我们就可以很爽的使用content.replaceAll("&","&");即把字符串content中的&全部替换成&,那么如果你想在js中处理这个问题怎么办呢,js没有replaceAll但是由replace方法。同样的原理,只不过这里replace("&","&");只会替换第一个匹配的字符,那么怎么替换掉全部的字符呢,有很多方法。自己想。