表达式中的Escape$:split()将正则表达式作为参数!常见问题。。。
我想在java中拆分函数。但效果并不好。
String mystring = "ersin#$gulbahar#$ev";
String [] scripts= mystring.split("#$"); //it does not split.
我该怎么解决这个问题?
String mystring = "ersin#$gulbahar#$ev";
String[] scripts = mystring.split("#\$");
System.out.println(Arrays.toString(scripts));
输出:
[ersin, gulbahar, ev]
试试这个:
mystring.split("#\$")
split方法使用Regex来分割文本,$字符在Regex 中有其他含义
split
以正则表达式为参数,$
是正则表达式中的一个特殊字符,意思是"匹配字符串的末尾"。
由于要匹配文本$
,而不是字符串的末尾,因此需要使用反斜杠对其进行转义:mystring.split("#\$");
应该可以。