Getting parts of string with for loop

5 ビュー (過去 30 日間)
Benedikt Skurk
Benedikt Skurk 2021 年 3 月 5 日
回答済み: Prudhvi Peddagoni 2021 年 3 月 8 日
Hi hopefully u can help me!
I have the attached string (picture) and now i want to get from every string in every column the word between the last \ and dot. So for example for the first column i would like to get Gös-Schb2_Ma142-Schb.
The problem is that i will have files later with a different pattern. So its important that i can find with the code the last backslash and dot. My code is:
pointLocation = strfind(A, '.');
underlineLocation = strfind(A, '\');
firstPart = A(underlineLocation(end):pointLocation(end));
But its not working at all...maybe u can help me?
  4 件のコメント
Stephen23
Stephen23 2021 年 3 月 5 日
編集済み: Stephen23 2021 年 3 月 5 日
"That is just for filenames i guess..."
The function has no idea if the input text is a filename of not. It just identifies the relevant separator characters.
"...and to seperate filename and path"
and file extension.
"But i have strings in a table right?"
That is the very first time you used the term table. Your screenshot shows a 1x408 string array, not a table.
"Dont know how i can work with that."
You could try using fileparts. The loop probably isn't required either.
Mathieu NOE
Mathieu NOE 2021 年 3 月 5 日
hello
so what does your code generate ?
is it possible for you to send a few examples of strings ?

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

採用された回答

Prudhvi Peddagoni
Prudhvi Peddagoni 2021 年 3 月 8 日
Hi,
As Stephen Cobeldick pointed out. fileparts function does exactly what you are looking for. the second output, name, is the part of the string that is after last '/' and before last '.'. So you can get the strings from a table and give it to this function.
Hope this helps.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCharacters and Strings についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by