为什么箭头<打破这个正则表达式?
why do arrows < break this regex?
$str = "for(var i = 0; i < aLinks.length; i++) {";
preg_replace( "!\s+!", "", $str );
输出:for(vari=0;i
我想要的输出是
for(var i=0;iaLinks.length;i++){
如果我像这样删除箭头 $str = "for(var i = 0; i (no arrow here) aLinks.length; i++) {";
然后我得到了想要的输出。
为什么后退箭头会破坏正则表达式?
我想要正则表达式做的是删除所有制表符换行符和空格,仅此而已。字符串可能有 < 或 > 等运算符,我希望忽略这些运算符。
这是一个愚蠢的小学生错误。我在浏览器中查看输出,因此它将“<”解释为标记,之后的所有内容都是不可见的。只需在浏览器中查看源代码,就会发现它确实按预期工作。
$str = "for(var i = 0; i < aLinks.length; i++) {";
preg_replace( "!\s+!", "", $str );
输出:for(vari=0;i
我想要的输出是
for(var i=0;iaLinks.length;i++){
如果我像这样删除箭头 $str = "for(var i = 0; i (no arrow here) aLinks.length; i++) {";
然后我得到了想要的输出。
为什么后退箭头会破坏正则表达式?
我想要正则表达式做的是删除所有制表符换行符和空格,仅此而已。字符串可能有 < 或 > 等运算符,我希望忽略这些运算符。
这是一个愚蠢的小学生错误。我在浏览器中查看输出,因此它将“<”解释为标记,之后的所有内容都是不可见的。只需在浏览器中查看源代码,就会发现它确实按预期工作。