gpt4 book ai didi

c# - 在结果中包含正面前瞻中的字符

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

Name: John
Surname: Doe
Age: 24

当我这样做

Regex.Replace(str,"(?<=^|\n)(.*)(?=:)", "")    

我明白了

: John
: Doe
: 24

我想在不使用另一个替换的情况下去掉冒号

最佳答案

(?=:)是一个积极的前瞻,它是一种非消耗模式。 : char 已被测试,但它没有落在匹配值内,因此不会被 Regex.Replace 替换方法。

您可以通过将前瞻模式转换为消费模式来使您的模式工作,即 (?=:) => : ,但您可以使用

简化您的模式
(?m)^.*:

参见 regex demo

(?m)^匹配的开头,不需要使用(?<=^|\n)因为它恰好表示了这一点。然后,.*:匹配除换行符以外的任何 0+ 个字符,直到最后一个 :还有最后一个: .

同时删除 : 之后的空格, 您可以添加 \s* , 或者(如果你只想处理水平空白字符)[\p{Zs}\t]* .

关于c# - 在结果中包含正面前瞻中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49128978/

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