java - 在 Java 中从空格或制表符向前或向后修剪

标签 java trim

我知道如何在 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/

相关文章:

java - FasterXML jackson-dataformat-xml 序列化版本和编码未添加到 xml

java - JAX-RS 应用程序未收到 Apache Wink Rest 客户端错误的正文

java - Java 中使用哪种队列实现?

java - 学习 Google 应用引擎和 GWT 的最佳书籍?

xslt - 仅从父元素修剪空白

C# Trim() 与 replace()

java - 如何使用 SAX 增加 entityExpansionLimit 来解析 XML 文件

javascript - 从字符串中 trim 特定字符

regex - vba中修剪前导和尾随空格的函数

java - 数字类型字符串 "trim "和 "replaceAll "不能去掉最后一个空格