栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java正则表达式转义字符

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java正则表达式转义字符

在当前情况下没有区别。通常的字符串转义序列是在单个反斜杠的帮助下形成的,然后有效的转义字符(

"n"
"r"
等)和 正则表达式转义序列
文字 反斜杠的帮助下形成(即Java字符串中的双反斜杠)。文字)和一个有效的正则表达式转义字符(
"\n"
"\d"
,等)。

"n"
转义序列 )是文字LF(换行符),并且
"\n"
是与LF符号匹配的正则表达式转义序列。

"r"
转义序列 )是文字CR(回车),并且
"\r"
是与CR符号匹配的正则表达式转义序列。

"t"
转义序列 )是文字的制表符,
"\t"
也是与制表符匹配的正则表达式转义序列。

有关 正则表达式 转义的受支持列表,请参见Java
regex文档
中的列表。
__

但是,如果使用

Pattern.COMMENTS
标志(用于引入注释并很好地格式化模式,使regex引擎忽略模式中所有未转义的空格),则需要在Java字符串文字中使用
"\n"
"\n"
定义换行符(LF)。和
"\r"
"\r"
定义回车(CR)。

查看Java测试:

String s = "n";System.out.println(s.replaceAll("n", "LF")); // => LFSystem.out.println(s.replaceAll("\n", "LF")); // => LFSystem.out.println(s.replaceAll("(?x)\n", "LF")); // => LFSystem.out.println(s.replaceAll("(?x)\n", "LF")); // => LFSystem.out.println(s.replaceAll("(?x)n", "<LF>")); // => <LF>//<LF>

为什么最后一个产生

<LF>
+ newline +
<LF>
?因为
"(?x)n"
等于
""
,所以是一个空模式,它与换行符之前和之后的空格匹配。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/470391.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号