Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中,从空格或制表符向前或向后修剪_Java_Trim - Fatal编程技术网

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

在Java中,从空格或制表符向前或向后修剪,java,trim,Java,Trim,我知道如何在Java中修剪东西,但是如何从空间或选项卡向左或向右修剪?我有一个程序可以搜索大约4个字符的前缀,比如说这个前缀是XYBC,然后它有X个字符,比如XYBC4975723434,但是我的代码所使用的行如下所示: Viuhaskfdksjfkds XYBC4975723434 fkdsjkfjaksjfklsdakldjsen 但是,我希望它将其裁剪为:XYBC4975723434 谢谢您可以使用正则表达式来实现这一点。例如,通过使用正则表达式XYBC\d+,可以匹配或查找前缀为XYBC

我知道如何在Java中修剪东西,但是如何从空间或选项卡向左或向右修剪?我有一个程序可以搜索大约4个字符的前缀,比如说这个前缀是
XYBC
,然后它有X个字符,比如
XYBC4975723434
,但是我的代码所使用的行如下所示:

Viuhaskfdksjfkds XYBC4975723434 fkdsjkfjaksjfklsdakldjsen

但是,我希望它将其裁剪为:
XYBC4975723434

谢谢

您可以使用正则表达式来实现这一点。例如,通过使用正则表达式
XYBC\d+
,可以匹配或查找前缀为
XYBC
的任何数字序列。在代码中,这将如下所示:

String input=“Viuhaskfdksjfkds XYBC4975723434 fkdsjkfjaksjfklsdakldjsen”;
Pattern=Pattern.compile(“XYBC\\d+”);
Matcher Matcher=pattern.Matcher(输入);
如果(!matcher.find())抛出新的RuntimeException(“找不到任何前缀为XYBC的数字!”);
System.out.println(matcher.group());//打印“XYBC4975723434”

还可以查看给定正则表达式的详细信息。

您可以使用正则表达式来实现这一点。例如,通过使用正则表达式
XYBC\d+
,可以匹配或查找前缀为
XYBC
的任何数字序列。在代码中,这将如下所示:

String input=“Viuhaskfdksjfkds XYBC4975723434 fkdsjkfjaksjfklsdakldjsen”;
Pattern=Pattern.compile(“XYBC\\d+”);
Matcher Matcher=pattern.Matcher(输入);
如果(!matcher.find())抛出新的RuntimeException(“找不到任何前缀为XYBC的数字!”);
System.out.println(matcher.group());//打印“XYBC4975723434”

还可以查看给定正则表达式的详细信息。

这不是修剪,而是正则表达式查找,使用以下正则表达式:

\bXYBC.*?\b
这个表达使用了单词边界,这可能不是你想要的

对于空白,请使用:

(?<=^|\s)XYBC\S*
输出(字边界)

XYBC4975723434
XYBC4975723434
未找到:Viuhaskfdksjfkds xxybc495723434 fkdsjkfjaksjfklsdakldjsen
XYBC49
输出(空白)

XYBC4975723434
XYBC4975723434
未找到:Viuhaskfdksjfkds xxybc495723434 fkdsjkfjaksjfklsdakldjsen
XYBC49-75(723)4$34

这不是一个trim,而是一个正则表达式find,使用以下正则表达式:

\bXYBC.*?\b
这个表达使用了单词边界,这可能不是你想要的

对于空白,请使用:

(?<=^|\s)XYBC\S*
输出(字边界)

XYBC4975723434
XYBC4975723434
未找到:Viuhaskfdksjfkds xxybc495723434 fkdsjkfjaksjfklsdakldjsen
XYBC49
输出(空白)

XYBC4975723434
XYBC4975723434
未找到:Viuhaskfdksjfkds xxybc495723434 fkdsjkfjaksjfklsdakldjsen
XYBC49-75(723)4$34
我有一个搜索4个字符前缀的程序,假设这个前缀是XYBC,那么它有X个字符

如果希望程序获取具有特定起始字母的子字符串并获取特定数量的字母,则可以执行此操作(除了使用正则表达式外):

测试:

String str = "Viuhaskfdksjfkds  XYBC4975723434 fkdsjkfjaksjfklsdakldjsen";
System.out.println(grabText(str, "XYBC", 14));
System.out.println(grabText(str, "XYBC", 5));           
System.out.println(grabText(str, "XYBC", 100)); 
System.out.println(grabText(str, "XYBC", 9999));    
XYBC4975723434
XYBC4
XYBC4975723434 fkdsjkfjaksjfklsdakldjsen
XYBC4975723434 fkdsjkfjaksjfklsdakldjsen
输出:

String str = "Viuhaskfdksjfkds  XYBC4975723434 fkdsjkfjaksjfklsdakldjsen";
System.out.println(grabText(str, "XYBC", 14));
System.out.println(grabText(str, "XYBC", 5));           
System.out.println(grabText(str, "XYBC", 100)); 
System.out.println(grabText(str, "XYBC", 9999));    
XYBC4975723434
XYBC4
XYBC4975723434 fkdsjkfjaksjfklsdakldjsen
XYBC4975723434 fkdsjkfjaksjfklsdakldjsen
我有一个搜索4个字符前缀的程序,假设这个前缀是XYBC,那么它有X个字符

如果希望程序获取具有特定起始字母的子字符串并获取特定数量的字母,则可以执行此操作(除了使用正则表达式外):

测试:

String str = "Viuhaskfdksjfkds  XYBC4975723434 fkdsjkfjaksjfklsdakldjsen";
System.out.println(grabText(str, "XYBC", 14));
System.out.println(grabText(str, "XYBC", 5));           
System.out.println(grabText(str, "XYBC", 100)); 
System.out.println(grabText(str, "XYBC", 9999));    
XYBC4975723434
XYBC4
XYBC4975723434 fkdsjkfjaksjfklsdakldjsen
XYBC4975723434 fkdsjkfjaksjfklsdakldjsen
输出:

String str = "Viuhaskfdksjfkds  XYBC4975723434 fkdsjkfjaksjfklsdakldjsen";
System.out.println(grabText(str, "XYBC", 14));
System.out.println(grabText(str, "XYBC", 5));           
System.out.println(grabText(str, "XYBC", 100)); 
System.out.println(grabText(str, "XYBC", 9999));    
XYBC4975723434
XYBC4
XYBC4975723434 fkdsjkfjaksjfklsdakldjsen
XYBC4975723434 fkdsjkfjaksjfklsdakldjsen

听起来像是要将输入字符串
split()
放在空白处。听起来像是要将输入字符串
split()
放在空白处。