2024-08-02 00:54:04
那你给我写的那个到底能实现不?还有一个问题:据说正则是按顺序匹配的?可是我上面的那些除了开头和结尾,还有G应该在X\Y\Z\R\F的前面外,其他的M\S都是乱序,怎么匹配啊
所谓的顺序匹配,是指正则的匹配过程以及书写过程,我提供给你的正则,是不分GXYZRF的先后的。
说到这一点,我要提醒你的是,我提供的这个正则,允许出现两次及两次以上相同的字母开头,比如下面的字符是匹配的:
G45R77897X2R32
里面出现了两个R
至于好不好用,你测试一下啊,毕竟你才是使用者,我只能做到尽力满足你表达出来的要求。
一般时候,让别人写正则,多多少少总有不满意 的地方。
String strG4P="((G04){1})([^XP]|\bXP\b))*";//表示G04后面没有出现X或P,或者同时出现X和P,对不对?不对的话你给我写一个表示G04后面同时出现X或P的,或者G04后面X或P都不出现的正则。谢谢,方便留个联系方式QQ什么的么,有很多问题请教啊
你说的那个正则有语法错误
G04(XP)?(?![XP])
这个正则实现:
1.G04后面不能单独出现X或P
2. G04后面可以同时出现XP
3. G04后面如果同时出现XP,XP也会被选择匹配
Q是有的,5 5 4 0 0 0 2 1 1。
但我的Q已经好久不用了,平时的时间也不是很多,所以Q现在基本上是摆设。