Flask接口签名sign原理与实例代码浅析
449
2022-08-30
java关于String.split("|")的使用方式
目录String.split("|")的使用我们先来写一段代码测试一下你知道结果是什么吗?String.split() 特殊字符处理split函数特殊符号的处理示例
String.split("|")的使用
我们先来写一段代码测试一下
public class TestSplit {
public static void main(String[] a){
String test = "中文|英文";
print(test.split("|"));
print(test.split(""));
print(test.split("\\|"));
}
public static void print(String[] a){
System.out.println("============================");
for(String i:a){
System.out.println(i);
}
System.out.println("=aMMesMXPr===========================\n");
}
}
你知道结果是什么吗?
如下:
============================
中文|英文============================
============================
中文|英文============================
============================中文英文============================
所以我们从上面可以知道:“|”和“”的效果是一样的,如果你要得到正确的结果你必须这样“\|”,双引号里面的是一个正则表达式。
String.split() 特殊字符处理
jdk 1.8
split函数
注意,split函数的参数是正则表达式。split函数的定义为:
/**
* Splits this string around matches of the given * href="../util/regex/Pattern.html#sum" rel="external nofollow" >regular expression
* href="../util/regex/Pattern.html#sum" rel="external nofollow" >regular expression
*
*
This method works as if by invoking the two-argument {@link
* #split(String, int) split} method with the given expression and a limit
* argument of zero. Trailing empty strings are therefore not included in
* the resulting array.
*
*
The string {@code "boo:and:foo"}, for example, yields the following
* results with these expressions:
*
*
*
*
*
*
*
*
*
*
*
*
*
* @param regex
* the delimiting regular expression
*
* @return the array of strings computed by splitting this string
* around matches of the given regular expression
*
* @throws PatternSyntaxException
* if the regular expression's syntax is invalid
*
* @see java.util.regex.Pattern
*
* @since 1.4
* @spec jsR-51
*/
public String[] split(String regex) { ... }
特殊符号的处理
split函数的参数是正则表达式,则正则表达式的特殊符号作为分隔符时,就需要特殊处理。
比如,.在正则表达式中是通配符,匹配除换行符(\n、\r)之外的任何单个字符。
对特殊符号的处理方法有两种:
转义。比如,\.放到中括号里。比如,[.]
示例
String[] s1 = "a.b.c".split("\\.");
System.out.println(Arrays.asList(s1)); //[a, b, c]
String[] s2 = "a.b.c".split("[.]");
System.out.println(Arrays.asList(s2)); //[a, b, c]
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~