Re: [问题] regular 在java unix 为什么不一样?

楼主: LPH66 (-6.2598534e+18f)   2015-09-25 18:22:38
※ 引述《pttnews (PTT新闻)》之铭言:
: 在java 我用 http://java-regex-tester.appspot.com/ 测试
: 在unix 我用 vim 测试
: 最近小弟在学习regular , regular 实属强大不得不学
: 有很多问题
: 例如:
: [a-b[c-d]] 我想要找a-b and c-d
: 在vim 没办法找到 /[a-b[c-d]
: 在java 则可以
: 请问各位高手, 这两者为何不一?
: 找到答案,
: Unix 要加上\
: [a-b\[c-d\]]
你一定哪里搞错了
[a-b\[c-d\]] 是“a 到 b、或 [、或 c 到 d、或 ]”
这怎么看都不是“a-b and c-d”...
再说你这句“a-b and c-d”也语焉不详,究竟你想找的是什么东西 @@
作者: pttnews (PTT新闻)   2015-09-25 21:00:00
谢谢L大, 我想要测试 交集 跟 联集http://goo.gl/hY9mHX按照他上面的说明 [a-d[m-p]]联集 [a-z&&[def]]交集事实上, 好像如你所说[]被当成字符看待请问是不是他说错了
楼主: LPH66 (-6.2598534e+18f)   2015-09-25 21:41:00
应该是他弄错了...常见的 regexp 的 character class直接写一起就是联集, 如 [a-dm-p]交集的话我不太确定, 似乎有 google 到好像部份的 regexp支援他讲的 && 语法的样子啊, 找到文件了: 他讲的那种交集联集语法 java 有支援所以你在那个网站上面测试会如你所预期Oracle 官方说明文件→http://tinyurl.com/o7dz2g2但那种语法一般的 PCRE regexp 是不支援的所以 vim 才试不出来
作者: pttnews (PTT新闻)   2015-09-25 22:08:00
谢谢L大好像.NET也有一些奇怪的语法先不管~现有这些够用了

Links booklink

Contact Us: admin [ a t ] ucptt.com