Java中字符转义的坑
2023-09-11 14:22:17 时间
一、java中的正则转义
在java中有许多对字符串的处理方法(如:split、replaceAll)需要用到正则表达式,而java对正则的处理不像js那样便捷。
java中没有转义字符串格式,因此使用普通字符串代替,但问题来了,普通字符串中也是支持转义字符的!
因此,我们经常会看到js中需要转移的
/\*/
在java中这样写
\\*
第一个转义字符转义第二个转义字符,之后正则方法调用者看到的就是
\*
于是读取到的转义字符就会转义*,最终正则方法调用者读到的是字符串
*
二、通用转义格式
针对字符
( [ { / ^ - $ ¦ } ] ) ? * + .
需要转义方法为字符前面加上"\\"
三、巨坑的 \ 转义
根据以上分析,java使用正则会对普通字符串进行两次正则分析(普通字符串本身一次,正则方法一次),于是如果要匹配单杠
\
我们应该使用
“\\\\”
相关文章
- Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.security.HadoopKerberosName.setRuleMechanism(Ljava/lang/String;)V
- Elasticsearch java api 基本搜索部分详解
- java中JTextPane使输出字符到指定的宽度换行,并将垂直滚动条的位置移动到输出的最后位置
- Java实现 第十一届蓝桥杯——走方格(渴望有题目的大佬能给小编提供一下题目,讨论群:99979568)
- Java实现 LeetCode 448 找到所有数组中消失的数字
- Java实现 LeetCode 390 消除游戏
- Java实现 LeetCode 96 不同的二叉搜索树
- java实现第七届蓝桥杯阶乘位数
- java实现第七届蓝桥杯压缩变换
- Java实现 蓝桥杯VIP 算法训练 统计字符次数
- (Java实现) 洛谷 P1553 数字反转(升级版)
- 【JAVA】java中char类型数组用数组名打印结果不是地址值而是数组内容
- 【JAVA】java编译错误:编码UTF8/GBK的不可映射字符
- Atitit.提升稳定性-----分析内存泄漏PermGen OOM跟解决之道...java
- ABAP,Java和JavaScript的序列化,反序列化
- 【java】Java 枚举(enum)如何使用以及原理
- 【java】Java 包(package)
- Java //PP1.4 按照以下要求编写一个程序,显示句子Knowledge is Power: a.一行显示 b.每行一词,分三行显示,每个词都相对居中 c.显示在一个由字符“=“和“|“。。。
- Java程序运行在Docker等容器环境有哪些新问题
- Java并发学习之中的一个——线程的创建
- Java正則表達式入门
- mysql-connector-java与Mysql、Java的对应版本
- java-信息安全(十一)-非对称加密算法002-ECC,签名003-ECDSA签名
- Java实现魔板拼图小游戏(完整版)
- 记Java代码的一次线程之旅
- 【java】Java 封装
- Java核心类库之(字符集/编码集、File类、递归、IO流:字节流、字符流、特殊操作流)
- JAVA开发讲义(二)-Java程序设计之数据之谜三
- java编程入门 常见问题0002:如何将你的ecpilse工程在同学的eclipse上恢复