我知道如何在 Java 中修剪内容,但是如何从空格或制表符向左或向右修剪?我有一个程序可以搜索一些 4 个字符的前缀,假设这个前缀是 XYBC,那么它有 X 个字符,例如 XYBC4975723434,但是我的代码所采用的行看起来像像这样:
Viuhaskfdksjfkds XYBC4975723434 fkdsjkfjaksjfklsdakldjsen
但是我希望将其修剪为:XYBC4975723434
谢谢
最佳答案
这不是修剪,而是正则表达式查找,使用以下正则表达式:
\bXYBC.*?\b
该表达式使用了单词边界,这可能不是您想要的。
对于空白,请使用:
(?<=^|\s)XYBC\S*
测试
public static void main(String[] args) {
test("Viuhaskfdksjfkds XYBC4975723434 fkdsjkfjaksjfklsdakldjsen");
test("XYBC4975723434");
test("Viuhaskfdksjfkds xXYBC4975723434 fkdsjkfjaksjfklsdakldjsen");
test("abc XYBC49-75(723)4$34 xyz");
}
private static void test(String text) {
Matcher m = Pattern.compile("\\bXYBC.*?\\b").matcher(text);
if (m.find()) {
System.out.println(m.group());
} else {
System.out.println("Not found: " + text);
}
}
输出(字边界)
XYBC4975723434
XYBC4975723434
Not found: Viuhaskfdksjfkds xXYBC4975723434 fkdsjkfjaksjfklsdakldjsen
XYBC49
输出(空格)
XYBC4975723434
XYBC4975723434
Not found: Viuhaskfdksjfkds xXYBC4975723434 fkdsjkfjaksjfklsdakldjsen
XYBC49-75(723)4$34
关于java - 在 Java 中从空格或制表符向前或向后修剪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33136233/