gpt4 book ai didi

regex - Visual Studio 中空白的正则表达式

转载 作者:行者123 更新时间:2023-12-02 01:44:01 26 4
gpt4 key购买 nike

我正在使用常规表达式来帮助在 Visual Studio 2012 中查找/替换。

根据msdn,(?([^\r\n])\s)匹配除换行符以外的任何空白字符。

但我不明白它是如何详细工作的。

我只知道[^\r\n]排除换行符,\s匹配任何空格。

外面(?)迷惑我,在 msdn 上找不到任何关于它的信息。

有人可以解释一下吗?或者给我一个链接来咨询。

最佳答案

你的正则表达式是错误的。只有在 \s 时才有效前面是正面或负面的前瞻。

(?:(?=[^\r\n])\s)

DEMO

上面正则表达式的意思是,匹配一个空格字符,但它不会是 \n\r
说明:
(?:                      group, but do not capture:
(?= look ahead to see if there is:
[^\r\n] any character except: '\r' (carriage
return), '\n' (newline)
) end of look-ahead
\s whitespace (\n, \r, \t, \f, and " ")
) end of grouping


(?:(?![\r\n])\s)

DEMO

您也可以通过负前瞻实现相同的效果。

说明:
(?:                      group, but do not capture:
(?! look ahead to see if there is not:
[\r\n] any character of: '\r' (carriage
return), '\n' (newline)
) end of look-ahead
\s whitespace (\n, \r, \t, \f, and " ")
) end of grouping

关于regex - Visual Studio 中空白的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26750825/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com