c# – 在字符串中的两个值之间查找单词
发布时间:2020-12-15 20:51:26 所属栏目:百科 来源:网络整理
导读:我有一个txt文件作为字符串,我需要找到两个字符之间的单词和Ltrim / Rtrim其他一切.它可能必须是有条件的,因为两个字符可能会根据字符串而改变. 例: car= (data between here I want) ;car = (data between here I want) /value 码: int pos = st.LastInde
我有一个txt文件作为字符串,我需要找到两个字符之间的单词和Ltrim / Rtrim其他一切.它可能必须是有条件的,因为两个字符可能会根据字符串而改变.
例: car= (data between here I want) ; car = (data between here I want) </value> 码: int pos = st.LastIndexOf("car=",StringComparison.OrdinalIgnoreCase); if (pos >= 0) { server = st.Substring(0,pos);.............. } 解决方法
这是我使用的一个简单的扩展方法:
public static string Between(this string src,string findfrom,string findto) { int start = src.IndexOf(findfrom); int to = src.IndexOf(findto,start + findfrom.Length); if (start < 0 || to < 0) return ""; string s = src.Substring( start + findfrom.Length,to - start - findfrom.Length); return s; } 有了它,你可以使用 string valueToFind = sourceString.Between("car=","</value>") 你也可以试试这个: public static string Between(this string src,params string[] findto) { int start = src.IndexOf(findfrom); if (start < 0) return ""; foreach (string sto in findto) { int to = src.IndexOf(sto,start + findfrom.Length); if (to >= 0) return src.Substring( start + findfrom.Length,to - start - findfrom.Length); } return ""; } 有了它,你可以给出多个结束标记(它们的顺序很重要) string valueToFind = sourceString.Between("car=",";","</value>") (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |