【发布时间】:2009-10-14 13:50:16
【问题描述】:
我正在尝试从字符串中提取一些单词。这两种情况如下所示:
Case 1: "Group X - Ford Mondeo or similar"
Case 2: "Group X - Ford Mondeo"
我想要一个 .NET 正则表达式,在这两种情况下都能捕获“Ford Mondeo”。 到目前为止我最好的是:
^Group [A-Z] - (?<VehicleModel>.+)(?: or similar)$
返回: 案例一:“福特蒙迪欧” 案例二:“” 我试过这个:
^Group [A-Z] - (?<VehicleModel>.+)(?: or similar)?$
返回:
Case 1: ""
Case 2: "Ford Mondeo"
我试图说“或类似”出现零次或一次。 我可能需要一个表示“如果以“或类似”结尾的表达式,请执行此操作,否则执行此操作。 我已经使用 Expresso 很长一段时间了,只是无法确定我需要什么。 你能帮忙吗?
【问题讨论】:
-
什么?:在第二个捕获组开始时做什么?
-
它使它不是一个捕获组。它允许 ?在它之后应用于其中的所有内容,但它不会存储为捕获组。