草庐IT

backreference

全部标签

java - 替换字符串中的反向引用语法(为什么是美元符号?)

在Java中,似乎在其他一些语言中,模式中的反向引用前面有一个反斜杠(例如\1、\2、\3等),但在替换字符串中,它们前面有一个美元符号(例如$1、$2、$3和还有$0)。这里有一个片段来说明:System.out.println("left-right".replaceAll("(.*)-(.*)","\\2-\\1")//WRONG!!!);//prints"2-1"System.out.println("left-right".replaceAll("(.*)-(.*)","$2-$1")//CORRECT!);//prints"right-left"System.out.pri

PHP 正则表达式和相邻的捕获组

PHPregexandadjacentcapturinggroups我第一次在正则表达式中使用捕获组,我想知道我的问题是什么,因为我假设正则表达式引擎从左到右查看字符串。我正在尝试将UpperCamelCase字符串转换为连字符小写字符串,例如:1HelloWorldThisIsATest=>hello-world-this-is-a-test我的前提是一个字母字符串,所以我不需要担心数字或其他字符。这是我尝试过的:1mb_strtolower(preg_replace('/([A-Za-z])([A-Z])/','$1-$2',"HelloWorldThisIsATest"));结果:1he

PHP 正则表达式和相邻的捕获组

PHPregexandadjacentcapturinggroups我第一次在正则表达式中使用捕获组,我想知道我的问题是什么,因为我假设正则表达式引擎从左到右查看字符串。我正在尝试将UpperCamelCase字符串转换为连字符小写字符串,例如:1HelloWorldThisIsATest=>hello-world-this-is-a-test我的前提是一个字母字符串,所以我不需要担心数字或其他字符。这是我尝试过的:1mb_strtolower(preg_replace('/([A-Za-z])([A-Z])/','$1-$2',"HelloWorldThisIsATest"));结果:1he