首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java中“\\cM?\r?”的含义

Java中“\\cM?\r?”的含义
EN

Stack Overflow用户
提问于 2013-08-29 20:07:06
回答 4查看 1.3K关注 0票数 1

我有一个类是我想用Java做的,它用了一行

代码语言:javascript
运行
复制
text[i] = text[i].replaceAll("\\cM?\r?\n", "");

我完全理解命令replaceAll将第一个字符串替换为第二个字符串,但不完全理解"\cM?\r?\n“代表什么?

如果有人能在引号之间解释这段文字,我将不胜感激。(我确实尝试过在谷歌上搜索,但没有找到令人满意的答案)

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-08-29 20:14:01

这是一个正则表达式。

\cM匹配控件-M或回车字符 \r匹配回车字符 N是一条新的生产线 ?匹配前面的字符或子表达式0次或一次。例如,“做什么?”与"do“或"do”中的“do”匹配。?等于{0,1}

不同的操作系统在windows中启动新行的方式不同,POSIX中的its /r/n是不同的。欧共体等

您的代码本质上是删除所有新行,并将所有内容都放在一行上。

票数 3
EN

Stack Overflow用户

发布于 2013-08-29 20:14:05

它匹配所有的新行字符。\cM是Windows的结尾。\r\n是另一种在Windows中执行行结束的方法。\n是标准的Unix行尾。

?意味着可选。

因此,匹配\cM\r\n\n,它们都是行尾的类型。应该把所有的东西都放在一条线上。

票数 1
EN

Stack Overflow用户

发布于 2013-08-29 20:15:48

正如我早些时候所说,在评论中..。

字符替身

\cX匹配控制字符。例如:\cm匹配控制-M。 与回程相符。 N与线馈相匹配。

http://www.javascriptkit.com/javatutors/redev2.shtml

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18520083

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档