3 回答
TA贡献1864条经验 获得超6个赞
用于IndexOf了解 item 是否存在,address如果存在则返回其后面的字符串:
var result = from item in streetType
let index = address.IndexOf(item)
where index != -1
select address.SubString(0, index);
TA贡献1785条经验 获得超8个赞
一种方法是简单地列出列表中Split
的每个地址streetType
,然后index[0]
从结果数组中获取第一项(at):
addresses = addresses .Select(address => address.Split(streetTypes.ToArray(), StringSplitOptions.None)[0]) .ToList();
TA贡献1812条经验 获得超5个赞
我可能倾向于做这样的事情:
string[] markers = "ave avenue pkwy".Split();
string address = "1st nice ave 1st floor";
var result = markers
.Select((marker, index) => new
{
markerIndex = index,
addressPosition = address.IndexOf(marker)
})
.FirstOrDefault(x => x.addressPosition != -1);
// returns { markerIndex = 0, addressPosition = 9 }
Thenresult是一个对象,要么为null(如果未找到标记),要么是包含两者的对象markerIndex,它告诉您首先找到哪个标记,并addressPosition告诉您找到标记字符串的字符。
- 3 回答
- 0 关注
- 153 浏览
添加回答
举报