首页 > 解决方案 > 我正在使用正则表达式 (.*) 来提取以下信息,但它留下了一半

问题描述

我正在使用 refex (.*),\s- 来提取下面的文本“Foz do Iguaçu”

我正在使用“DepartCity”格式:“Diante do cenário desafiador que estamos passando, seu voo para (.*), Foz do Iguaçu (IGU), no dia 01/03/2021, foi cancelado devido a ajustes em nossa malha aérea .",

但它留下了文本的结尾,即 (IGU), no dia 01/03/2021, foi cancelado devido a ajustes em nossa malha aérea。",

我在这里做错了什么?

谢谢

标签: .netregexregex-group

解决方案


正如评论者提到的,您需要转义这些特殊字符:

\(\.\*\), (.*)

然后,您的第一个捕获组将包含以下字符串:

Foz do Iguaçu (IGU), no dia 01/03/2021, foi cancelado devido a ajustes em nossa malha aérea。

在这里试试:https ://regex101.com/r/Gdwbh4/1

我假设您想在“(。*),”之后提取字符串的整个剩余部分。

此外,您不应直接在 JSON 字符串上使用 RegEx。相反,首先解析 JSON 以检索值,然后您可以在其上执行 RegEx。


推荐阅读