java正则表达,该怎么理解才好??

令狐-少侠 2014-07-05 08:50:48
比如:
String string="123.1234";
1)String[] strings2 = string.split("\\.");//这个算什么?
2)String[] strings3 = string.split("\n");//这个又算什么?
3)String[] strings3 = string.split("\.");//这个直接报错的
我也知道,转义转义,可是解释起来是矛盾的。
问题如下:
一、从1),2)比较可以得到什么结论?
二、从1),3)可以得到什么结论?
三、从2),3)可以得到什么结论?
我不是想知道,使用什么方法可以把"123.123",使用点号分号,我是像明白,正则里面的转义,怎么理解。
三个问题答的合理,给分!
...全文
379 9 打赏 收藏 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuxian221 2014-07-10
  • 打赏
  • 举报
回复
感谢大大分享。多多学习。初学者
令狐-少侠 2014-07-08
  • 打赏
  • 举报
回复
引用 6 楼 mrliu0905 的回复:
这些都是转义字符啊\n \\ ,你这些基础没弄懂前就先别学正则了,还有,split()只是把字符串分割的函数,一般是用new RegExp(pattern, attributes);这个来玩正则的
或许是我没有说明白。我是问,转义是怎么理解的。比如\n这个,n只是一个字符n,但是加上\就是写作\n的时候,它表达的意义变化了,不再是单独的一个字母n,意义变了!变为了换行符。那么,进入到正则点号“.”有两个意思,一个是字符点"."一个是正则里面的通配符;从JDK的源码和split()的使用来看,系统是把"."到当做普通字符直接使用的,因为需要转义。问题是这里的转义却是要使用两个\\,我问的在于此。
mrliu0905 2014-07-07
  • 打赏
  • 举报
回复
这些都是转义字符啊\n \\ ,你这些基础没弄懂前就先别学正则了,还有,split()只是把字符串分割的函数,一般是用new RegExp(pattern, attributes);这个来玩正则的
tony4geek 2014-07-07
  • 打赏
  • 举报
回复
多看看多练习就明白了。有些符号是 正则的
  • 打赏
  • 举报
回复
看看这个帖子是否会有用处 http://bbs.csdn.net/topics/210012108
fengcaho0616 2014-07-06
  • 打赏
  • 举报
回复
有个地方斜杠打反了~~!。。。。
fengcaho0616 2014-07-06
  • 打赏
  • 举报
回复
个人理解:“\n"是转意符,但有时候你需要的是使用正则表达;但正则表达也是”\“+字母啥的;那你如何让语言识别你是要转义还是正则; 所以变成了"\\"+符号啥的,两个斜杠的意思是说 我真的要用斜杠了 不是要转义,比如"//n"传达的是”\n“这个命令;而“”\n"传达的是“回车”这个命令 我也刚学没多久 自己的理解 楼下觉着有错提出来 别喷啊~~!
令狐-少侠 2014-07-05
  • 打赏
  • 举报
回复
引用 1 楼 ggg957432 的回复:
第一个和第三个情况类似,第一个"\",是Java字符串转义,第二个是正则表达式转义。split方法传递的是一个正则表达式 第二个,Java字符串默认最后都有一个换行字符
正则表达式转义和普通转义,有什么区别?
ggg957432 2014-07-05
  • 打赏
  • 举报
回复
第一个和第三个情况类似,第一个"\",是Java字符串转义,第二个是正则表达式转义。split方法传递的是一个正则表达式 第二个,Java字符串默认最后都有一个换行字符

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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