gpt4 book ai didi

c# - RegEx 查找不存在的空格前缀但不包含匹配中的字符?

转载 作者:太空宇宙 更新时间:2023-11-03 14:54:14 24 4
gpt4 key购买 nike

所以我有以下 RegEx 用于查找和添加空格:

(\S)(\()

因此,对于像“SomeText(Somemoretext)”这样的字符串,我想将其更新为“SomeText (Somemoretext)”,它匹配“t(”,因此我的替换从字符串中消除了“t”,这是不好的。我也不知道这个字符可能是什么,我只是想找出不存在的空格。

有没有更好的表达式可以使用,或者有没有办法从返回的匹配中排除找到的字符,以便我可以安全地替换而不会捕获我不想替换的字符?

谢谢

最佳答案

我发现环视很难阅读,更喜欢使用 substitutions在替换字符串中改为:

var s = Regex.Replace("test1() test2()", @"(\S)\(", "$1 (");
Debug.Assert(s == "test1 () test2 ()");

$1 将正则表达式中的第一个捕获组插入到替换字符串中,替换字符串是左括号 ( 之前的非空格字符。

关于c# - RegEx 查找不存在的空格前缀但不包含匹配中的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50456987/

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