Java 为什么String.split($)不起作用?
我有三个部分的字符串,每个部分用$symbol分隔 比如说,Java 为什么String.split($)不起作用?,java,string,split,Java,String,Split,我有三个部分的字符串,每个部分用$symbol分隔 比如说, String s = "abc$efg$xyz"; 现在,当我使用如下拆分方法拆分它时: String values[] = s.split("$"); 它将值数组作为单个元素包含整个字符串 但当我使用这个: String values[]=s.split("\\$"); 它完全符合我的意思 现在,值数组分别包含索引0、1和2上的abc、efg和xyz 我想知道为什么第一次拆分不起作用,因为我在使用split在单个空白处拆分时使
String s = "abc$efg$xyz";
现在,当我使用如下拆分方法拆分它时:
String values[] = s.split("$");
它将值数组作为单个元素包含整个字符串
但当我使用这个:
String values[]=s.split("\\$");
它完全符合我的意思
现在,值数组分别包含索引0、1和2上的abc、efg和xyz
我想知道为什么第一次拆分不起作用,因为我在使用split在单个空白处拆分时使用了类似的拆分 String.split采用正则表达式
正则表达式中的$表示字符串的nd,因此如果要匹配文本$字符,则需要将其转义。string.split采用正则表达式
正则表达式中的$表示字符串的nd,因此如果要匹配文本$字符,则需要对其进行转义。因为字符$是正则表达式中用于标记行尾的保留标记。这就是为什么必须使用\\.对其进行转义,因为字符$是正则表达式中用于标记行尾的保留标记。这就是为什么必须使用\\.$对其进行转义。示例中显示的$在正则表达式中表示java正则表达式中使用的字符串结尾 它是用来
$ Checks if a line end follows
因此,您必须使用\\$,如示例中所示,它位于正则表达式中,表示java正则表达式中使用的字符串结尾 它是用来
$ Checks if a line end follows
因此,您必须使用\\为什么否决投票我对正则表达式不太了解,所以我在搜索了有关的问题后在这里问了这么多?\BTW模式。quote$是正则表达式更安全的转义机制。为什么否决投票我对正则表达式不太了解,所以我在搜索了有关问题后在这里问了这么多?\BTW模式。quote$是更安全的转义机制正则表达式的机制。