cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Choose Language Hide Translation Bar
miguello
Level VI

Find location of item in a list that partially matched to a string (search list by partial match)

Can't find a good way of doing this task.

Let's say I have this:

list = {"big apple", "big orange", "big pear"};
string = "orange";

How do I find a location of an item in the list that partially matches to the string?

1 ACCEPTED SOLUTION

Accepted Solutions
txnelson
Super User

Re: Find location of item in a list that partially matched to a string (search list by partial match)

Here is one way

Names Default To Here( 1 );
thelist = {"big apple", "big orange", "big pear"};
string = "orange";

found = 0;
For( i = 1, i <= N Items( thelist ), i++,
	If( Contains( thelist[i], string ),
		found = i;
		Break();
	)
);
Jim

View solution in original post

2 REPLIES 2
txnelson
Super User

Re: Find location of item in a list that partially matched to a string (search list by partial match)

Here is one way

Names Default To Here( 1 );
thelist = {"big apple", "big orange", "big pear"};
string = "orange";

found = 0;
For( i = 1, i <= N Items( thelist ), i++,
	If( Contains( thelist[i], string ),
		found = i;
		Break();
	)
);
Jim
miguello
Level VI

Re: Find location of item in a list that partially matched to a string (search list by partial match)

Ok, I was hoping that there would be a solution without iteration.

Something in one line that would either give me  the location mask (like {0, 1, 0} for the case above) or the list of locations (like {2} for the case above)