gpt4 book ai didi

visual-studio - Visual Studio 正则表达式 '?'

转载 作者:行者123 更新时间:2023-12-04 03:39:50 25 4
gpt4 key购买 nike

MSVS:正则表达式在哪里?
我有一些代码试图与 MSVS 2008 中的正则表达式匹配,但我无法找出它的正则表达式。举个经典的例子:

colou?r

...这是一个匹配 color 的正则表达式或 colour .这在 MSVS 中都不匹配。引用帮助文件,我找不到 ? .

这没什么大不了的 - 可以交替模拟:
colo(u|)r

但是,我得到“缺少分组表达式')'。”...它是...不是。奇怪的是,MSVS 有这些带花括号的替代组(我不太确定为什么......):
colo{u|}r

这给了我“模式中的语法错误”的完全不同的错误。...其中,我没有看到。
基本上,我该怎么做 ? ?我的实际输入不像颜色/颜色那么简单,否则我只会用 (color|colour) 伪造它.我想可以伪造它,但这是一种笨拙的方法。

让我们尝试交替然后...

好吧,我还是做不到,即使有交替。我有以下两个正则表达式:

^[A-Z]+\t[0-9]+\t[^\t]+

^[A-Z]+\t[0-9]+\t[^\t]+\t[^\t]+

这两个匹配两组行分别匹配我的文本。 (第一个匹配与第二个匹配的部分行。)

我的输入是货币信息行:

BZD 084 伯利兹元
CAD 124 加元
CDF 976 刚果法郎
CHE 947 WIR 欧元(补充货币)
756 瑞士法郎
CHW 948 WIR法郎(补充货币)
CLF 990 Unidad de Fomento(资金代码)

(例如,在 WIR 欧元和(补充货币)之间有标签,但它们并不总是存在。)

从逻辑上讲,它应该遵循这个组合

^[A-Z]+\t[0-9]+\t[^\t]+

^[A-Z]+\t[0-9]+\t[^\t]+\t[^\t]+

..你得到...

^[A-Z]+\t[0-9]+\t([^\t]+|[^\t]+\t[^\t]+)

...不知何故似乎相当于第一组中的第二个表达式。

最佳答案

我们自己的 Jeff Atwood不久前写过这个。基本上,Visual Studio 的正则表达式实现非常不标准,并且没有直接的方法来执行通常使用“?”完成的操作。 '。您必须使用您的 {colour|color}表达。

关于visual-studio - Visual Studio 正则表达式 '?',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1050939/

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