簡體   English   中英

如何使用正則表達式從黃瓜功能文件中提取特定場景

[英]How to pull a specific scenario from a cucumber feature file using regex

我有一個包含多個方案的黃瓜功能文件,每個方案都有一個不同的“與”。 我正在使用Java regex解析文件,並希望根據And中的文本提取特定的方案。

例如:

功能:測試的東西

場景:

燕子飛小姐假定一位女士和一位燕子飛“蠅”,女士就住了

場景:

女士吞下蜘蛛假設女士和女士吞下“蠅”,“蜘蛛”,則女士生活

場景:

女士吞下所有東西假設女士吞下了“蠅”,“蜘蛛”,“貓”,“狗”,“牛”,然后女士死了

場景:

女士吞下除狗以外的所有東西給女士,女士吞下“蠅”,“蜘蛛”,“貓”,“牛”,然后女士死

我想拉出包含dog的場景並將其轉儲到單獨的文件中。 在我的現實生活中, dog=account number並且與多個SQL提取關聯,這些提取自動加載到本地數據庫中。 這是單個功能文件中的單個方案,該文件是數百個文件中的一個。 因此,在方案頂部使用@run不是一個簡單的情況。 我實際上是在提取場景和相關文件,以便可以將它們放在沙箱中。

到目前為止,我擁有的正則表達式是:

.*?dog.*Scen

但這會從場景的第一個實例中選擇超出我想要的場景。

相反,我想退出小組:

場景:

女士吞下所有東西假設女士吞下了“蠅”,“蜘蛛”,“貓”,“狗”,“牛”,然后女士死了

有誰知道我可以退出那個小組嗎?

如果方案用\\ n分隔,請嘗試:

^[^\n]+\bdog\b[^\n]+

DEMO

如果是連續字符串,請嘗試:

(?=Scenario).+?\bdog\b.+?(?=Scenario|$)

DEMO

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM