Java-regexp-捕获数字,但前提是前面没有比较器
我有一个字符串列表,其模式如下:Java-regexp-捕获数字,但前提是前面没有比较器,java,regex,lookbehind,Java,Regex,Lookbehind,我有一个字符串列表,其模式如下: 128 and 228 and alpha > 200 and bravo < 400 or charlie = 400 我试图通过以下方法实现这一点:(^\d+|)(?|您可以使用该机制 我们希望找到并替换没有数字的数字 或200,布拉沃200…您可能还应该阅读“”谢谢你的回复…很抱歉忘了提到第二场比赛也包括空格。我不想这样。谢谢Pshemo…这正是我要找的。我只是无法让regexp只选择没有空格的数字。这非常有效。 s.128 and s.2
128 and 228 and alpha > 200 and bravo < 400 or charlie = 400
我试图通过以下方法实现这一点:(^\d+|)(?|您可以使用该机制
我们希望找到并替换没有数字的数字
或
200,布拉沃<400或查理=400
我试过了,效果很好:
请注意,第二个匹配也包括
228
之前的空格,这将使替换的字符串看起来像s.128 ands.228和alpha>200…
您可能还应该阅读“”谢谢你的回复…很抱歉忘了提到第二场比赛也包括空格。我不想这样。谢谢Pshemo…这正是我要找的。我只是无法让regexp只选择没有空格的数字。这非常有效。
s.128 and s.228 and alpha > 200 and bravo < 400 or charlie = 400
replaceAll("(?<![>=<]\\s|\\d)\\d+", "s.$0")
String text = "128 and 228 and alpha > 200 and bravo < 400 or charlie = 400";
text = text.replaceAll("(?<![>=<]\\s|\\d)\\d+", "s.$0");
System.out.println(text);
s.128 and s.228 and alpha > 200 and bravo < 400 or charlie = 400