我需要一个正则表达式,需要获取一行最后有一个匹配单词的行。它应该选择行而不选择lastword。
例如
abc = new obj(); //对象OBJECT_CREATION
正则表达式应该选择上面有OBJECT_CREATION的语句,但是应该选择下面的语句。 OBJECT_CREATION关键字应该用于标识该行,不应该选择它。
预期输出
abc = new obj(); //对象
有可能得到它吗?
答案 0 :(得分:0)
只需用空字符串替换最后一个单词和前面的空格字符。
string.replaceAll("\\s*\\S+$", "");
或
string.replaceAll("\\s*\\S+\\s*$", "");
或强>
将所有角色匹配到最后一个空格。
Pattern p = Pattern.compile(".*(?= )");
或
Pattern p = Pattern.compile(".*(?=\\s)");