Regular expressions, builing up a simple expression for a search

1 回表示 (過去 30 日間)
Adriel Perez Tellez
Adriel Perez Tellez 2019 年 7 月 18 日
Hello All,
I am stuck with a regular expression and I would appreciate your help. I want to list some specific cases from some simulations. For instance, I have the following case names:
...
wkxr4_75_ind1_350_0.inf
wkxr4_75_ind4_400_0.inf
swxr4_75_ind3_420_0.inf
wkxr4_75_cap1_350_0.inf
stxr4_75_cap2_400_0.inf
wkxr4_75_cap5_420_0.inf
...
Until now I just needed to do something simple, like getting the cases that started with sw, or wk, or st:
^(sw|wk|st)
However, now I want to find of those cases, the ones that also contain 400_0 and 420_0
I undertand the $ character can be used to give me the end, and it could work with something like this, right?
$(400_0.inf|420_0.inf)
The complete expression would be something like this below. However, I tried several different variations without success. For instance using [a-z_]+. etc.
'^(sw|wk|st) 'something here?' $(400_0.inf|420_0.inf)'
Thanks in advance!
Best regards,
Adriel Perez

採用された回答

Adam Danz
Adam Danz 2019 年 7 月 18 日
編集済み: Adam Danz 2019 年 7 月 18 日
I recommend that site when building regular expressions.
^(sw|wk|st).+(400_0\.inf|420_0\.inf)$
% ^ start ^^ ^ ^ ^
% ^^ ^ ^ ^ end
% ^^ anything in between
% ^ .........^ escape characters (\) for decimal points
  2 件のコメント
Guillaume
Guillaume 2019 年 7 月 18 日
Another way to write the end of that regular expression would be:
'^(sw|wk|st).+4[02]0_0\.inf$'
And the .+ could be .* depending on whether or not you want something between the two expressions.
Adriel Perez Tellez
Adriel Perez Tellez 2019 年 7 月 18 日
That worked great.
Thanks!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeProgrammatic Model Editing についてさらに検索

製品


リリース

R2016b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by