Java正则表达式元字符
我发现线程和其中一个用户发布了以下代码行:Java正则表达式元字符,java,regex,string,Java,Regex,String,我发现线程和其中一个用户发布了以下代码行: String[] digits2 = number.split("(?<=.)"); String[]digits2=number.split((?这是一个)。整个表达式的意思是“在任何字符之后,但不捕获任何内容”。本质上,如果字符串 ABC 然后在字符之间的|处进行匹配 A|B|C| .split(“”)(在空字符串/模式上)将匹配正则表达式开头的空字符串。这是一个不需要的额外空字符串。(?零宽度空格是这里使用的错误术语;这是。@Cair
String[] digits2 = number.split("(?<=.)");
String[]digits2=number.split((?这是一个)。整个表达式的意思是“在任何字符之后,但不捕获任何内容”。本质上,如果字符串
ABC
然后在字符之间的|
处进行匹配
A|B|C|
.split(“”)
(在空字符串/模式上)将匹配正则表达式开头的空字符串。这是一个不需要的额外空字符串。(?零宽度空格是这里使用的错误术语;这是。@Cairnarvon感谢您指出这一点…您更喜欢哪个术语?我想说“字符边界”“,但这也不是严格正确的。老实说,我不确定。我知道“.”匹配除换行符以外的任何字符,但什么是“@Haque1这是一个元字符序列,它告诉表达式。不应捕获任何内容。引擎需要查看字符是否存在,但不应将该字符从流中删除。@Haque1这是lookback的一个不寻常的用法。更常见的方法是:(?)?